การฝังรูปภาพภายในที่เก็บ GitHub wiki (gollum) หรือไม่


87

วิกิ Github ได้รับการสนับสนุนโดยที่เก็บ git แยกจากนั้นเป็นที่เก็บโครงการหลัก

โพสต์นี้โดยทีม Github ทำให้ดูเหมือนว่าคุณควรจะสามารถเชื่อมโยงไปยังภาพที่เก็บไว้ในที่เก็บ wiki ภายในมาร์กอัป wiki

รูปภาพและโฟลเดอร์

ตอนนี้คุณสามารถอ้างอิงรูปภาพที่โฮสต์ภายในที่เก็บ Git ได้

ฉันได้ตรวจสอบที่เก็บของ wiki ของฉันแล้วและดันโฟลเดอร์ทรัพยากรและรูปภาพเข้าไปในนั้น คำถามของฉันคือฉันจะใช้ภาพนี้ได้อย่างไร?

เป็นไปได้หรือว่าฉันเข้าใจผิดอะไร?


มี github-FAQ เกี่ยวกับการเพิ่มรูปภาพไปยังวิกิแต่ไม่มีข้อมูลเกี่ยวกับ URL รูปภาพแบบสัมพัทธ์สั้น ๆ ที่กล่าวถึงที่นี่
k3b

คำตอบ:


57

ในการใช้เส้นทางสัมพัทธ์ให้ทำ:

[[foo.jpg]]

สำหรับข้อมูลเพิ่มเติมโปรดดูที่หน้าวิกิพีเดียสาธิตบนภาพ


วิธีนี้ดีกว่าในการเข้ารหัสเส้นทาง สิ่งเดียวที่ฉันคิดไม่ออกคือวิธีสร้างข้อความแสดงแทนโดยใช้วิธีนี้ โอ้และภาพในการสาธิตนั้นไม่โหลดให้ฉัน
James McMahon

หากคุณโคลน git: //github.com/mojombo/gollum-demo.git แล้วเรียกใช้gollumคุณจะเห็นสิ่งเหล่านี้ :)
Benjamin Oakes

4
บางทีฉันอาจจะขาดอะไรไป ... แต่[[wiki syntax]]ผลงานในวิกินี้ที่ฉันช่วยได้: github.com/newhavenrb/conferences/wiki/WindyCityRails-2012 บางทีคุณกำลังลองใช้ README อยู่หรือเปล่า?
Benjamin Oakes

2
ไวยากรณ์ของวิกิถูกกำหนดโดยนามสกุลไฟล์ .wikiใช้สไตล์มีเดียวิกิ .mdใช้สไตล์ markdown (คำตอบของ RyanQ)
Drew Noakes

3
คำตอบนี้ใช้ไม่ได้อีกต่อไปดูคำตอบของ @ Werner ด้านล่าง (โดยย่อใช้! [text] (images / someimage.png) และบันทึก - จะไม่แสดงในตัวอย่าง)
edmofro

97

สำหรับผู้ชมที่ต้องการดูภาพบน github wiki ฉันพบวิธีการต่อไปนี้:

  • ไปที่แท็บ "การเข้าถึง Git" ในหน้าวิกิของที่เก็บของคุณและดึงเส้นทาง SSH ซึ่งควรเป็นเช่น: git@github.com: USER / REPO.wiki.git โดยที่ USER คือชื่อบัญชีของคุณและ REPO คือ ชื่อที่เก็บ
  • บนเครื่องของคุณใช้เครื่องมือบรรทัดคำสั่ง Git ใดก็ตามที่คุณต้องการ cd ลงในไดเร็กทอรีโลคัลที่คุณเลือกและรับที่เก็บผ่าน

    git clone git@github.com: USER / REPO.wiki.git

  • ตอนนี้ภายในที่เก็บนี้สร้างไดเร็กทอรีรูปภาพฉันจะเรียกมันว่า "อิมเมจ" และใส่รูปภาพที่คุณต้องการลงในไดเร็กทอรี

  • จากนั้นดันไดเรกทอรี wiki git ของคุณไปที่ github
  • คุณจะไม่สามารถมองเห็นภาพทางกายภาพในแท็บ "เพจ" ได้ แต่ถ้าคุณเพียงแค่อ้างอิงรูปภาพในลิงก์ในเครื่องคุณก็จะสามารถดูได้ ตัวอย่างด้วย Markdown ด้านล่าง:

    ![Alt attribute text Here](images/YOURIMAGE.ext)

  • นอกจากนี้คุณยังสามารถฝังรูปภาพเป็นลิงก์ได้โดยการห่อเพิ่มเติมดังนี้:

    [![Alt attribute text Here](images/YOURIMAGE.ext)](http://Yoursite.com)

คุณยังสามารถเพิ่มไดเรกทอรีย่อยภายในสำเนาในเครื่องของคุณเพื่อช่วยจัดระเบียบวิกิเนื่องจากแท็บ "หน้า" จะแสดงรายการเหล่านั้น อย่างไรก็ตามโปรดทราบว่าแม้ว่าจะมีการพุชไดเรกทอรีใหม่แท็บ "หน้า" จะไม่แสดงรายการไดเรกทอรี


31

ดูเหมือนจะไม่มีคำตอบใด ๆ เมื่อเพิ่มรูปภาพเข้าreadme.mdมา ฉันมีวิธีแก้ไข:

หาก URL ของรูปภาพคือ:

https://github.com/Username/Repository-Name/blob/master/Directory-Inside-Repository/image.png

การแทนที่blobด้วยrawจะให้ URL ของอิมเมจดิบ:

https://github.com/Username/Repository-Name/raw/master/Directory-Inside-Repository/image.png

ตอนนี้คุณจะฝังรูปภาพโดยใช้มาร์กดาวน์ปกติ:

![Image Alt](https://github.com/Username/Repository-Name/raw/master/Directory-Inside-Repository/image.png)

อัปเดต:ณ ตอนนี้ GitHub ยังให้บริการอิมเมจดิบจากโดเมนย่อยraw.github.comอื่น ดังนั้นคุณยังสามารถใช้:

https://raw.github.com/Username/Repository-Name/master/Directory-Inside-Repository/image.png

ตัวอย่าง: https://raw.github.com/Automattic/liveblog/master/screenshot-1.png


ยอดเยี่ยม ... สิ่งนี้ทำให้ฉันสามารถเชื่อมโยงไปยังรูปภาพได้โดยตรงในความคิดเห็นของ GitHub :) github.com/mccalltd/AttributeRouting/issues/…
Leniel Maccaferri

1
ทำงานให้ฉันขอบคุณ น่าเสียดายที่มันใช้ไม่ได้กับเส้นทางสัมพัทธ์
Elvis Ciotti

26

เส้นทางสัมพัทธ์ทำงานสำหรับฉันดังนี้:

หน้าแรกของ wiki:

![text](wiki/images/someimage.png)

หน้าย่อยของ wiki:

![text](images/someimage.png)

โปรดทราบว่าเมื่อทำการดูตัวอย่างรูปภาพจะไม่ปรากฏขึ้นฉันได้บันทึกไว้


3
เคล็ดลับนี้โดย @Werner สำคัญมาก (ขอบคุณมาก!) ด้วยเหตุผลบางอย่างหน้าแรกของวิกิพีเดียของคุณแตกต่างจากคนอื่น ๆ ทั้งหมดดังนั้นในหน้าแรกที่คุณจำเป็นต้องวิกิพีเดีย / เส้นทาง / foo.extที่หน้าอื่น ๆ ทั้งหมดใช้เส้นทาง / foo.ext การอ้างอิงสัมพัทธ์กลับไปที่ repo ของคุณนั้นดีกว่าการอ้างอิงแบบสัมบูรณ์มาก หากคุณย้ายหรือโคลนโครงการของคุณหรือแก้ไขแบบออฟไลน์ทุกอย่างยังคงใช้งานได้ไม่ว่า repo จะอยู่ที่ไหนก็ตาม โปรดทราบว่าไวยากรณ์! [text] (ลิงก์) นี้ใช้ได้ดีสำหรับวัตถุประสงค์ส่วนใหญ่ แต่ถ้าคุณต้องการจัดแนวภาพคุณต้องใช้แท็ก HTML IMG มาตรฐาน
TonyG

ดูเหมือนว่านี่จะเป็นคำตอบที่ทันสมัยกว่า
albfan

สาขาที่นี่คืออะไร?
จอนนี่

15

หากคุณต้องการอัปโหลดภาพอย่างรวดเร็วด้วยการลาก / วางคุณสามารถดำเนินการดังต่อไปนี้ (แม้ว่าจะแฮ็ค):

สร้างปัญหาหลอกๆ ลากและวางภาพของคุณที่นั่น คัดลอก / วางรหัสภาพ markdown ที่อัปโหลดลงในวิกิของคุณ

หลังจากที่คุณสร้างปัญหาหนึ่งครั้งคุณสามารถใช้ปัญหานี้กี่ครั้งก็ได้

หวังว่านี่จะช่วยให้ทุกคนที่กำลังมองหาการแก้ไขอย่างรวดเร็วโดยไม่จำเป็นต้องมีภาพอยู่ใน repo


8

นี่คือวิธีปฏิบัติที่ใช้ได้จริง:

  • ไปที่ปัญหาใด ๆ บน github
  • ในส่วนความคิดเห็นคุณสามารถแนบไฟล์เพียงลาก / วางเลือกหรือวางภาพของคุณ
  • คัดลอกรหัส / ลิงค์ที่แสดงในพื้นที่ข้อความ
  • แปะไว้ใน wiki
  • กำไร !

คุณไม่จำเป็นต้องสร้างหรือแก้ไขปัญหาใด ๆ เมื่อเทียบกับโซลูชัน @tiby!


2
ขอขอบคุณ! ฉันสงสัยว่าทำไม github ไม่รองรับฟังก์ชันนี้ในไซต์ wiki ของพวกเขา
Sven

6

คิดออก

URL มีรูปแบบดังนี้

https://raw.github.com/wiki/username/project/pathtoimage/imagename.extension

pathtoimage เป็นทางเลือก


3
ใช้งานได้ แต่จะควบคู่ไปกับวิธีที่ GitHub จัดเก็บไฟล์ ถ้าพวกเขาเปลี่ยนเส้นทางมันจะพัง gollumนอกจากนี้ยังจะทำลายเมื่อใช้วิกิพีเดียในประเทศผ่านทาง
Benjamin Oakes

5

รูปแบบ URL ของ James ใช้ไม่ได้กับฉันอาจมีการเปลี่ยนแปลง ฉันได้ใช้:

https://github.com/username/project/wiki/pathtoimage/image.extension

ที่ไหนpathtoimageเป็นทางเลือก


@JonathanLeung มันเป็นเพียงตัวอย่างของไวยากรณ์สำหรับลิงก์ที่ไม่ได้ไปไหนจริง ๆ
James McMahon

2

ในที่สุดก็นำภาพเข้าสู่ที่เก็บโดยใช้วิธีการอธิบายโดย nerdwin และนำไปแสดงในวิกิโดยใช้ ![test](test.jpg)


1

markdown ต่อไปนี้จะอ้างอิงรูปภาพในrepo GitHub ของคุณจากภายใน GitHub wiki ที่เกี่ยวข้อง

![My Alt Text](../blob/master/Path/ToAsset/In/Repo.png?raw=true)

ตัวอย่างข้างต้นถือว่าคุณมีโครงสร้างไฟล์ต่อไปนี้ใน repo ของคุณ

  • เส้นทาง
    • ToAssets
      • ใน
        • Repo.png

สำหรับตัวอย่างโลกแห่งความเป็นจริงถ้าฉันต้องการอ้างอิงภาพนี้ใน github จาก wiki ที่เกี่ยวข้องฉันจะใช้ markdown นี้

![Azure App Settings](../blob/master/TrelloWorld/TrelloWorld.Server/Assets/Azure_AppSettings.png?raw=true)

ข้อควรระวัง

  1. เรื่องคดี
  2. หากคุณอยู่ในโฮมเพจพิเศษของวิกิคุณไม่จำเป็นต้องเพิ่มระดับด้วย ../ ในตัวอย่างของฉันด้านบนลิงก์ที่ถูกต้องจะเป็น

สำหรับหน้าแรก:

![Azure App Settings](blob/master/TrelloWorld/TrelloWorld.Server/Assets/Azure_AppSettings.png?raw=true)

เรื่องคดี Repo.png ไม่เหมือนกับ repo.png
Josh

หากคุณอยู่ในโฮมเพจของวิกิสิ่งนี้จะเปลี่ยนแปลงเล็กน้อย คุณต้องวาง ../. ลิงก์จะเป็น (blob / master / Path / ToAsset / In / Repo.png? raw = true)
Josh

สาขาของรูปภาพที่โฮสต์มีความสำคัญหรือไม่
จอนนี่

ฉันยังไม่ได้ลอง แต่เมื่อดู URL ในตัวอย่างของฉันฉันเชื่อว่ามันน่าจะทำได้ ในตัวอย่างของฉันฉันถือว่าทุกอย่างเป็นไปตามหลัก คุณคงแค่เปลี่ยนคำว่า "master" ในตัวอย่างของฉันเป็นสาขาอะไรก็ได้

1

ใช้เส้นทางสัมพัทธ์

Wiki ตั้งอยู่ที่ [repositoryname]/wiki

ไฟล์ในที่เก็บอยู่ที่ [repositoryname]/raw/master/[file path in repository]

ดังนั้นใช้เส้นทางสัมพัทธ์: ../raw/master/[file path in repository]


ฉันต้องทำ../../ในหน้าย่อยดังนั้นระวังว่ามันสัมพันธ์กับเส้นทางของหน้าปัจจุบัน
tutuDajuju

ถ้าคุณไม่มีสาขาชื่อ master?
จอนนี่

1

ฉันใส่ทั้งรูปภาพและ PDF ในวิกิของฉัน ฉันโคลนวิกิและเพิ่มไดเร็กทอรีimagesและfilesไดเร็กทอรีจากนั้นใช้ markdown ต่อไปนี้เพื่อฝังลิงก์รูปภาพและเพิ่มลิงก์ไฟล์:

รูปภาพ:

[[/images/path/to/image.ext|ALT TEXT]]

ไม่จำเป็นต้องใช้เครื่องหมายทับนำหน้าหากหน้า wiki ของคุณอยู่ในระดับรูททั้งหมด แต่ฉันใช้ไดเรกทอรีย่อยและพา ธ สัมบูรณ์แก้ไขได้อย่างถูกต้องและทำให้ทุกอย่างง่าย

ไฟล์:

[link text](files/path/to/file.ext "ALT TEXT")

หมายเหตุไม่มีเครื่องหมายทับนำหน้าสำหรับfilesเส้นทางวิกิเพื่อแก้ไขอย่างถูกต้องเป็นลิงก์ในรูปแบบนี้

ฉันบันทึกสิ่งนี้พร้อมรายละเอียดเพิ่มเติมในส่วนสำคัญของ GitHub



0

ความคิดเห็นจาก @ Drew Noakesสำหรับคำถามเดิมทำเพื่อฉัน:

ไวยากรณ์สำหรับรูปภาพที่ฉันต้องการให้แสดง:

[[/images/imageName.png]]

ภาพนี้ปรากฏเมื่อเปลี่ยนชื่อเท่านั้น:

wikiPage.md --> wikiPage.wiki

โครงสร้างโฟลเดอร์ต่อไปนี้ถูกใช้ในที่เก็บ wiki:

repository.wiki
   |--wikiPage.wiki
   |--images
        |--imageName.png       

แต่:

ไวยากรณ์ใน. wiki แตกต่างจากไฟล์. md


0

หลายคำตอบไม่ได้ผลสำหรับฉันในที่สุดนี่คือสิ่งที่ได้ผล:

![](../raw/master/Images/ImportantImage.png)

การใช้โหมดแก้ไข "Markdown" และเพจย่อยเช่น:

https://github.com/project/repo/wiki/MyPage

-จอห์น

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.