Jak dodać zrzut ekranu do plików README w repozytorium github?


594

Czy można umieścić zrzut ekranu w pliku README w repozytorium GitHub? Jaka jest składnia?


1
Prawidłowym rozwiązaniem tego jest użycie referencji względnych, zgodnie z tą odpowiedzią stackoverflow.com/a/11916467/1633251 (zobacz komentarz z łączem do nowego dokumentu github na temat tego, jak to zrobić). Odpowiedź jest krótka do użytku[Read more words!](docs/more_words.md)
David H

2
Większość rozwiązań wskazuje na samo repozytorium. Co jeśli chcesz uniknąć plików binarnych w repozytorium (nawet w oddzielnej gałęzi, zgodnie z propozycją) i chcesz przechowywać go w miejscu zewnętrznym? Jakieś dobre praktyki? Może istota (IDK, jeśli istota może być binarna lub tylko tekstowa)? tworzysz kolejne repozytorium „myproject-resources” dla projektu „myproject”? Jakieś zewnętrzne popularne miejsce na zdjęcia podobne do faktycznego standardu YouTube do przesyłania filmów?
Xavi Montero,


Odpowiedzi:


850

Jeśli używasz Markdown (README.md):

Pod warunkiem, że masz obraz w swoim repozytorium, możesz użyć względnego adresu URL:

![Alt text](/relative/path/to/img.jpg?raw=true "Optional Title")

Jeśli chcesz osadzić obraz hostowany w innym miejscu, możesz użyć pełnego adresu URL

![Alt text](http://full/path/to/img.jpg "Optional title")

GitHub zaleca używanie łączy względnych z ?raw=trueparametrem, aby zapewnić rozwidlenie punktu repos.

Ten raw=trueparametr służy do zapewnienia, że ​​obraz, do którego prowadzi łącze, będzie renderowany w takiej postaci, w jakiej jest. Oznacza to, że tylko obraz zostanie połączony, a nie cały interfejs GitHub dla tego odpowiedniego pliku. Zobacz ten komentarz, aby uzyskać więcej informacji.

Sprawdź przykład: https://raw.github.com/altercation/solarized/master/README.md

Jeśli używasz pomostów żylnych wtedy trzeba ustawić atrybut do dezynfekcji true, a także: ?raw=true&sanitize=true. (Dzięki @EliSherer)

Ponadto dokumentacja dotycząca odnośników względnych w plikach README: https://help.github.com/articles/relative-links-in-readmes

I oczywiście dokumenty Markdown: http://daringfireball.net/projects/markdown/syntax

Dodatkowo, jeśli utworzyć nowy oddział screenshotsdo przechowywania obrazów można uniknąć ich będąc w masterdrzewie pracy

Możesz je następnie osadzić, używając:

![Alt text](/../<branch name>/path/to/image.png?raw=true "Optional Title")

1
Cóż, dodałem oficjalne dokumenty dotyczące linków względnych, ale nie jestem w stanie znaleźć repozytorium, które ich użyje, jeśli masz sugestie, chętnie pomogę, ponieważ cały punkt pomaga większej liczbie osób, a nie pozostaje w zasięgu (mój błąd tutaj).
Paul

2
@Paul, oto przykładowe repozytorium, które właśnie to robi! github.com/Tarrasch/zsh-bd
Tarrasch

4
github.com/altercation/solarized jest renderowaną wersją powyższego przykładu, na wypadek, gdyby komukolwiek to pomogło.
barrycarter

3
Kiedy mówisz /relative/path/to/img.jpg, czy nie jest to absolutna ścieżka z powodu wiodącego cięcia?
JWW

1
@kelvin, raw=trueparametr służy do renderowania obrazu, na który wskazuje ścieżka GitHub, a nie interfejsu GitHub. Spróbuj i zobacz różnicę: github.com/altercation/solarized/blob/master/img/... vs github.com/altercation/solarized/blob/master/img/... . Pierwszy adres URL pokazuje interfejs GitHub i obraz, a drugi pokazuje tylko obraz. Względne linki są nadal przydatne podczas klonowania / tworzenia repozytoriów, więc tak, powinieneś używać ścieżek względnych z tym parametrem, ale są to dwie różne koncepcje.
Paul

70

Mimo że istnieje już akceptowana odpowiedź, chciałbym dodać inny sposób przesyłania zdjęć do pliku readme na GitHub.

  • Musisz stworzyć problem w swoim repozytorium
  • Przeciągnij i upuść w polu komentarza swój obraz
  • Po wygenerowaniu linku do obrazu wstaw go do pliku readme

Więcej informacji można znaleźć tutaj


6
Interesuje mnie, jak długo będą ładowane obrazy załadowane w ten sposób. Czy github wykonuje czyszczenie niektórych obrazów? Na przykład: „jeśli do tego obrazu nie odwołuje się żaden problem z githubem, mogę go bezpiecznie usunąć” ...
artin

1
@Artin prawdopodobnie tylko wtedy, gdy problem zostanie całkowicie usunięty. Zamknięte problemy
trwają na

55

Odkryłem, że ścieżka do obrazu w moim repozytorium nie była wystarczająca, musiałem połączyć się z obrazem w raw.github.comsubdomenie.

Format adresu URL https://raw.github.com/{USERNAME}/{REPOSITORY}/{BRANCH}/{PATH}

Przykład obniżki cen ![Settings Window](https://raw.github.com/ryanmaxwell/iArrived/master/Screenshots/Settings.png)


4
Głosowanie w dół z powodu komentarza @sorens do zaakceptowanej odpowiedzi. Określenie kąpieli bezwzględnej jest złe, ponieważ nie będzie dobrze działać na rozwidlonych repozytoriach. (Lub jeśli zmienisz nazwę swojego repo lub jeśli github zmieni nazwę domeny itp.)
Linus Unnebäck

7
@ LinusUnnebäck: Jest jeden dobry powód, aby używać ścieżek bezwzględnych imho: Jeśli readme.md jest używany również w innych miejscach, na przykład jako strona główna Doxygen. Względne linki nie będą wtedy działać.
Ela782,

1
@ Ela782, chociaż, z drugiej strony, nie powinno to stanowić problemu dla oprogramowania, które zgrywa pliki README specjalnie z GitHub ; takie oprogramowanie powinno wiedzieć, jak poprawnie rozwiązywać względne adresy URL. npm robi .
Mark Amery

jak link do obrazu w raw.github.comsubdomenie? gdzie przesłać plik obrazu?
Saif

@ Saif raw.github.com to tylko odzwierciedlenie tego, co jest zaangażowane w Twoje repozytorium github. Po prostu prześlij obraz do swojego repozytorium i postępuj zgodnie z określonym formatem adresu URL.


21

Jedna linia poniżej powinna być tym, czego szukasz

jeśli twój plik znajduje się w repozytorium

![ScreenShot](https://raw.github.com/{username}/{repository}/{branch}/{path})

jeśli plik znajduje się w innym zewnętrznym adresie URL

![ScreenShot](https://{url})

2
zasugeruj użycie względnego łącza pliku obrazu, zobacz Łącza względne w plikach README - Pomoc Github
shaobin0604

2
-1 z powodu podanego przez @ shaobin0604; oficjalni doktorzy zalecają używanie linków względnych podczas łączenia z plikiem we własnym repozytorium, aby po rozwidleniu link wskazywał właściwe miejsce.
Mark Amery

17

Składnia przeceny do wyświetlania obrazów jest w rzeczywistości:

![image](https://{url})

ALE: Jak zapewnić url?

  • Prawdopodobnie nie chcesz zaśmiecać repozytorium zrzutami ekranu, nie mają one nic wspólnego z kodem
  • możesz nie chcieć radzić sobie z kłopotami związanymi z udostępnianiem obrazu w Internecie ... (prześlij go na serwer ...).

Więc ... możesz użyć tej niesamowitej sztuczki, aby github hostował twój plik obrazu. TDLR:

  1. utwórz problem na liście problemów swojego repozytorium
  2. przeciągnij i upuść zrzut ekranu dotyczący tego problemu
  3. skopiuj kod rabatowy, który właśnie utworzył github, aby wyświetlić obraz
  4. wklej go w pliku Readme (lub gdziekolwiek chcesz)

http://solutionoptimist.com/2013/12/28/awesome-github-tricks/


7

Znacznie prostsze niż dodawanie adresu URL Wystarczy załadować obraz do tego samego repozytorium, na przykład:

![Screenshot](screenshot.png)


7

dodaj to do README

<div align="center">
    <img src="/screenshots/screen1.jpg" width="400px"</img> 
</div>

4

Obniżka cen: ![Screenshot](http://url/to/img.png)

  • Utwórz problem dotyczący dodawania zdjęć
  • Dodaj obraz, przeciągając i upuszczając lub wybierając plik
  • Następnie skopiuj źródło obrazu

  • Teraz dodaj ![Screenshot](http://url/to/img.png)do pliku README.md

Gotowy!

Alternatywnie możesz użyć witryny hostingu obrazów, na przykład imguruzyskać adres URL i dodać go do pliku README.md lub hostować pliki statyczne.

Przykładowy problem


Zrobiłem to dawno temu, teraz zdjęcia są niedostępne. Więc nie polecam tego.
Namek

W takim przypadku zawsze możesz użyć imgur lub niestandardowego obrazu cdn :)
abe312

4

Metoda 1-> Metoda Markdown

![Alt Text](https://raw.github.com/{USERNAME}/{REPOSITORY}/{BRANCH}/{PATH})

Metoda 2-> sposób HTML

<img src="https://link(format same as above)" width="100" height="100"/>

lub

<img src="https://link" style=" width:100px ; height:100px " />

Uwaga -> Jeśli nie chcesz stylizować obrazu, tzn. Zmienić rozmiaru, usuń część stylu


1

Najpierw utwórz katalog (folder) w katalogu głównym lokalnego repozytorium, który będzie zawierać screenshotsżądany dodatek. Nazwijmy ten katalog screenshots. Umieść obrazy (JPEG, PNG, GIF, `itp.), Które chcesz dodać do tego katalogu.

Zrzut ekranu obszaru roboczego Android Studio

Po drugie, musisz dodać link do każdego obrazu do swojego README. Więc jeśli mam obrazy o nazwach 1_ArtistsActivity.pngi 2_AlbumsActivity.pngw moim katalogu zrzutów ekranu, dodam ich linki w następujący sposób:

 <img src="screenshots/1_ArtistsActivity.png" height="400" alt="Screenshot"/> <img src=“screenshots/2_AlbumsActivity.png" height="400" alt="Screenshot"/>

Jeśli chcesz, aby każdy zrzut ekranu znajdował się w osobnej linii, napisz ich linki w osobnych liniach. Lepiej jest jednak napisać wszystkie linki w jednym wierszu, oddzielone tylko spacją. Może nie wygląda to zbyt dobrze, ale dzięki temu GitHub automatycznie zaaranżuje je dla Ciebie.

Wreszcie, zatwierdź swoje zmiany i wciśnij je!


1

Przeszukałem kilka podobnych pytań i nie znalazłem odpowiedzi na mój problem i jego dość proste / łatwe rozwiązanie.

Google Cloud Storage - nieco inne podejście do obrazów w plikach README

Oto i tak: podobnie jak OP chciałem obraz w moim Github README i znając składnię Markdown, wpisałem go:

![My Image](https://storage.cloud.google.com/${MY_BUCKET}/${MY_IMAGE}

Aby to zadziałało, musisz wypełnić powyższe faktyczne podstawienia (np. MY_IMAGE = image.jpg).

Ale czekaj ... porażka - nie ma faktycznie renderowanego zdjęcia! Link jest dokładnie taki, jak podany przez Google Storage!

zrzut ekranu nieudanego przesyłania obrazu Github

Github camo- Anonimowe obrazy

Github hostuje twoje zdjęcia anonimowo , tak! Stanowi to jednak problem dla zasobów pamięci masowej Google. Musisz pobrać wygenerowany adres URL z konsoli Google Cloud.

Jestem pewien, że istnieje płynniejszy sposób, po prostu odwiedź podany punkt końcowy adresu URL i skopiuj długi adres URL. Detale:

Instrukcje

  1. Odwiedź konsolę do przechowywania danych: https://console.cloud.google.com/storage/browser/ $ {MY_BUCKET}? Project = $ {MY_PROJECT}
  2. Kliknij obraz, który chcesz wyświetlić w Github (wyświetli się strona „Szczegóły obiektu”)
  3. Skopiuj makaron tego adresu URL (ten, który zaczyna się od httpsnie gs) do nowej karty / okna przeglądarki
  4. Skopiuj makaron nowego wygenerowanego adresu URL - powinien być dłuższy - z nowej karty / okna przeglądarki do pliku Github README

Mamy nadzieję, że pomoże to przyspieszyć i wyjaśnić ten problem innym osobom.


FYI - Wygląda na to, że coś się zmienia po stronie Google lub Github. Miałem kilka obrazów w README, które zawiodły przy użyciu tej metody, a niektóre działały od popołudnia 28 marca 2020 r. Tutaj YMMV!
Jason R. Stevens CFA

0

Dla mnie najlepszym sposobem jest -

  1. Utwórz nowy problem z tym repozytorium na github, a następnie prześlij plik w formacie gif. Aby przekonwertować pliki wideo na format gif, możesz skorzystać z tej witryny http://www.online-convert.com/
  2. Prześlij nowo utworzony problem.
  3. Skopiuj adres przesłanego pliku
  4. Wreszcie w pliku README umieść! [Demo] (COPIED ADDRESS)

Mam nadzieję, że to pomoże.



0

Dodaj obraz w repozytorium z opcji przesyłania pliku, a następnie do pliku README

![Alt text]("enter image url of repositoryhere") 

-5

Z obrazami znajdującymi się w /screen-shotskatalogu. Zewnętrzne <div>pozwala na ustawienie obrazów. Wypełnienie uzyskuje się za pomocą <img width="desired-padding" height="0">.

<div align="center">
        <img width="45%" src="screen-shots/about.PNG" alt="About screen" title="About screen"</img>
        <img height="0" width="8px">
        <img width="45%" src="screen-shots/list.PNG" alt="List screen" title="List screen"></img>
</div>

1
Przez całe życie nie mogłem wymyślić obrazu w README - który zawiera twoja odpowiedź, więc dziękuję!
Cody Reichert

Uznałem tę odpowiedź za przydatną, ponieważ umożliwia ustawienie wymiarów obrazu
Stanley
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.