Como adicionar uma captura de tela aos READMEs no repositório do github?


595

É possível colocar uma captura de tela no arquivo README em um repositório GitHub? Qual é a sintaxe?


1
A solução correta para isso é usar referências relativas, de acordo com esta resposta stackoverflow.com/a/11916467/1633251 (consulte o comentário no link para um novo documento do github sobre como fazer isso). A resposta curta é usar[Read more words!](docs/more_words.md)
David H

2
A maioria das soluções propõe apontar para o repo em si. E se você deseja evitar binários no repositório (mesmo em uma ramificação separada, conforme proposto) e deseja armazená-lo em um local externo? Alguma boa prática? Uma essência talvez (IDK se essência puder ser binária ou apenas texto)? criando outro repositório "myproject-assets" para o projeto "myproject"? Algum local de imagem popular externo semelhante ao padrão de fato do youtube para enviar vídeos?
Xavi Montero


Respostas:


852

Se você usar o Markdown (README.md):

Desde que você tenha a imagem em seu repositório, você pode usar um URL relativo:

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

Se você precisar incorporar uma imagem hospedada em outro lugar, poderá usar um URL completo

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

O GitHub recomenda que você use links relativos com o ?raw=trueparâmetro para garantir que os repositórios bifurcados aponte corretamente.

O raw=trueparâmetro está lá para garantir que a imagem à qual você vincula seja renderizada como está. Isso significa que apenas a imagem será vinculada, não toda a interface do GitHub para o respectivo arquivo. Veja este comentário para mais detalhes.

Confira um exemplo: https://raw.github.com/altercation/solarized/master/README.md

Se você usar SVGs então você precisa para definir o atributo sanitize para trueassim: ?raw=true&sanitize=true. (Obrigado @EliSherer)

Além disso, a documentação sobre links relativos nos arquivos README: https://help.github.com/articles/relative-links-in-readmes

E, claro, os documentos de remarcação: http://daringfireball.net/projects/markdown/syntax

Além disso, se você criar uma nova ramificação screenshotspara armazenar as imagens, poderá evitar que elas estejam na masterárvore de trabalho

Você pode incorporá-los usando:

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

1
Bem, adicionei os documentos oficiais em links relativos, mas não consigo encontrar algum repositório que os use; se você tiver sugestões, terei prazer em ajudar, pois o objetivo é ajudar mais pessoas, não permanecer no escopo (meu erro aqui).
Paul

2
@Paul, aqui está um exemplo de repositório fazendo exatamente isso! github.com/Tarrasch/zsh-bd
Tarrasch

4
github.com/altercation/solarized é a versão renderizada do exemplo acima, caso isso ajude alguém.
Barrycarter

3
Quando você diz /relative/path/to/img.jpg, esse não é um caminho absoluto devido à barra principal?
JWW

1
@kelvin, o raw=trueparâmetro existe para renderizar a imagem que o caminho do GitHub aponta, não a interface do GitHub. Experimente e veja a diferença: github.com/altercation/solarized/blob/master/img/… vs github.com/altercation/solarized/blob/master/img/… . O primeiro URL mostrará a interface do GitHub e a imagem, enquanto o segundo mostrará apenas a imagem. Os links relativos ainda são úteis durante a clonagem / bifurcação de repositórios, portanto, sim, você deve usar caminhos relativos com esse parâmetro, mas são dois conceitos diferentes.
Paul

70

Embora já exista uma resposta aceita, gostaria de adicionar outra maneira de fazer upload de imagens para leia-me no GitHub.

  • Você precisa criar um problema no seu repositório
  • Arraste e solte na área de comentários sua imagem
  • Após o link da imagem ser gerado, insira-o no seu leia-me

Mais detalhes você pode encontrar aqui


6
Estou interessado em quanto tempo as imagens carregadas dessa maneira permanecerão. O github executa a limpeza de algumas imagens? Como, "se esta imagem não for referenciada em nenhum problema do github, eu posso removê-la com segurança" ...
artin 7/08/17

1
@ Artin provavelmente apenas quando o problema for excluído completamente. Questões fechadas ficar por aqui para sempre como eles servem um papel muito importante na documentação e depuração
andrhamm

55

Descobri que o caminho para a imagem no meu repositório não era suficiente, eu tinha que vincular à imagem no raw.github.comsubdomínio.

Formato de URL https://raw.github.com/{USERNAME}/{REPOSITORY}/{BRANCH}/{PATH}

Exemplo de remarcação ![Settings Window](https://raw.github.com/ryanmaxwell/iArrived/master/Screenshots/Settings.png)


4
Voto negativo por causa do comentário do @sorens sobre a resposta aceita. É ruim especificar banho absoluto, pois não funcionará bem em repositórios bifurcados. (Ou se você mudar o nome do repo, ou se github muda nome de domínio, etc. etc.)
Linus Unnebäck

7
@ LinusUnnebäck: Há um bom motivo para usar caminhos absolutos imho: se o readme.md também for usado em outros lugares, por exemplo, na página principal do Doxygen. Links relativos não funcionarão então.
Ela782

1
@ Ela782, embora, em uma observação adicional, isso não deva ser um problema para o software que está copiando arquivos README especificamente do GitHub ; esse software deve saber resolver URLs relativos adequadamente. npm faz , por exemplo.
Mark Amery

como vincular à imagem no raw.github.comsubdomínio? onde carregar o arquivo de imagem?
Saif

O @Saif raw.github.com é apenas um reflexo do que está comprometido com seu repositório do github. Apenas envie a imagem ao seu repositório e siga o formato de URL especificado.


21

Uma linha abaixo deve ser o que você procura

se o seu arquivo estiver no repositório

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

se o seu arquivo estiver em outro URL externo

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

2
sugerir o uso do link relativo do arquivo de imagem, consulte Links relativos em
READMEs

2
-1 pelo motivo fornecido por @ shaobin0604; os documentos oficiais recomendam o uso de links relativos ao vincular a um arquivo em seu próprio repositório, para que o link aponte para o lugar certo quando for bifurcado.
Mark Amery

17

A sintaxe de remarcação para exibir imagens é de fato:

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

MAS: Como fornecer o url?

  • Você provavelmente não deseja confundir seu repositório com capturas de tela, elas não têm nada a ver com código
  • você pode não querer lidar com o incômodo de disponibilizar sua imagem na web ... (faça o upload para um servidor ...).

Então ... você pode usar esse truque incrível para fazer o github hospedar seu arquivo de imagem. TDLR:

  1. crie um problema na lista de problemas do seu repositório
  2. arraste e solte sua captura de tela sobre esse problema
  3. copie o código de remarcação que o github acabou de criar para você exibir sua imagem
  4. cole-o no seu leia-me (ou onde quiser)

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


7

Muito mais simples do que adicionar URL Apenas envie uma imagem para o mesmo repositório, como:

![Screenshot](screenshot.png)


7

adicione isso ao README

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

4

Remarcação: ![Screenshot](http://url/to/img.png)

  • Crie um problema ao adicionar imagens
  • Adicione a imagem arrastando e soltando ou pelo seletor de arquivos
  • Em seguida, copie a fonte da imagem

  • Agora adicione ![Screenshot](http://url/to/img.png)ao seu arquivo README.md

Feito!

Como alternativa, você pode usar algum site de hospedagem de imagens, como imguro URL, e adicioná-lo ao seu arquivo README.md, ou você também pode usar alguma hospedagem de arquivo estática.

Problema de amostra


Eu fiz isso há muito tempo, agora as imagens não estão disponíveis. Então, eu não recomendo isso.
precisa

Você pode sempre usar imgur ou algum CDN imagem personalizada nesse caso :)
abe312

4

Método 1-> maneira Markdown

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

Método 2-> maneira HTML

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

ou

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

Nota -> Se você não deseja estilizar sua imagem, ou seja, redimensionar, remova a parte do estilo


1

Primeiro, crie um diretório (pasta) na raiz do seu repositório local que conterá o que screenshotsvocê deseja adicionar. Vamos chamar o nome desse diretório screenshots. Coloque as imagens (JPEG, PNG, GIF, `etc) que você deseja adicionar neste diretório.

Captura de tela da área de trabalho do Android Studio

Em segundo lugar, você precisa adicionar um link para cada imagem no seu README. Portanto, se eu tiver imagens nomeadas 1_ArtistsActivity.pnge 2_AlbumsActivity.pngno meu diretório de capturas de tela, adicionarei os links assim:

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

Se você quiser cada captura de tela em uma linha separada, escreva seus links em linhas separadas. No entanto, é melhor se você escrever todos os links em uma linha, separados apenas por espaço. Pode até não parecer muito bom, mas ao fazê-lo, o GitHub os organiza automaticamente para você.

Por fim, confirme suas alterações e pressione-o!


1

Pesquisei no Google algumas perguntas semelhantes e não encontrei respostas para o meu problema e sua solução bastante simples / fácil.

Google Cloud Storage - uma abordagem ligeiramente diferente para imagens em READMEs

Aqui está: como o OP, eu queria uma imagem no meu README do Github e, conhecendo a sintaxe do Markdown para isso, digitei:

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

Você precisa concluir as substituições reais acima (por exemplo, MY_IMAGE = image.jpg) para que isso funcione.

Mas espere ... falha - não há foto renderizada real! E o link é exatamente o fornecido pelo Google Storage!

captura de tela de falha no upload de imagem do Github

Github camo- Imagens Anônimas

O Github hospeda suas imagens anonimamente , yay! No entanto, isso apresenta um problema para os ativos de armazenamento do Google. Você precisa obter o URL gerado no seu Google Cloud Console.

Tenho certeza de que há uma maneira mais suave, no entanto, basta visitar o terminal de URL especificado e copiar o URL longo. Detalhes:

Instruções

  1. Visite seu console de armazenamento: https://console.cloud.google.com/storage/browser/ $ {MY_BUCKET}? Project = $ {MY_PROJECT}
  2. Clique na imagem que você deseja exibir no Github (isso abre a página "Detalhes do objeto")
  3. Copie a pasta que URL (a que começa com httpsnão gs) em uma nova guia / janela do navegador
  4. Copie a massa do novo URL gerado - deve ser mais longo - da nova guia / janela do navegador para o arquivo LEIA-ME Github

Esperemos que isso ajude a acelerar e esclarecer esse problema para qualquer outra pessoa.


FYI - Parece que algo está mudando no lado do Google ou do Github. Eu tive algumas imagens nos READMEs que falharam com esse método e algumas funcionaram na tarde de 28 de março de 2020. YMMV aqui!
Jason R Stevens CFA

0

Para mim, o melhor caminho é -

  1. Crie um novo problema com esse repositório no github e faça o upload do arquivo no formato gif. Para converter arquivos de vídeo em formato gif, você pode usar este site http://www.online-convert.com/
  2. Envie o problema recém-criado.
  3. Copie o endereço do arquivo carregado
  4. Finalmente, no seu arquivo LEIA-ME, coloque! [Demo] (ENDEREÇO ​​COPIADO)

Espero que isso ajude.


Qual é a diferença de stackoverflow.com/a/32252663/1570104 ?
edelans

0

Adicionar imagem no repositório a partir da opção de upload de arquivo e depois no arquivo README

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

-5

Com as imagens localizadas no /screen-shotsdiretório O exterior <div>permite que as imagens sejam posicionadas. O preenchimento é obtido usando <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
Pela minha vida, não consegui descobrir uma imagem centralizada no README - que sua resposta contém, então obrigado!
Cody Reichert

Achei esta resposta útil, pois permite definir as dimensões da imagem
Stanley
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.