Skip to main content

Anexando arquivos com GitHub CLI

Anexe imagens e vídeos locais a problemas, solicitações de pull e comentários sem sair da linha de comando.

Você pode anexar uma imagem ou vídeo local pela linha de comando com GitHub CLI usando o sinalizador --attach. GitHub CLI faz upload do arquivo para GitHub e insere a URL resultante no corpo da sua issue, pull request ou comentário, para que ele seja exibido inline, da mesma forma que seria se você o anexasse no seu navegador.

Você precisa de acesso por push ao repositório para anexar arquivos.

O --attach sinalizador está disponível nos seguintes comandos:

  • gh issue create
  • gh issue edit
  • gh issue comment
  • gh pr create
  • gh pr edit
  • gh pr comment

Anexando um arquivo

Passe --attach com o caminho para um arquivo local. No exemplo a seguir, substitua ISSUE-NUMBER pelo número de seu problema e PATH/TO/IMAGE pelo caminho para sua imagem. Você pode repetir o sinalizador para anexar mais de um arquivo, mas não é possível anexar o mesmo arquivo duas vezes.

gh issue comment ISSUE-NUMBER --attach PATH/TO/IMAGE

Você pode combinar --attach com --body ou --body-file inserir imagens e vídeos em seu Markdown. O exemplo a seguir usa espaços reservados para o título do pull request, o arquivo Markdown do corpo e dois arquivos de imagem.

gh pr create \
  --title "PULL-REQUEST-TITLE" \
  --body-file PATH/TO/BODY-FILE \
  --attach PATH/TO/FIRST-IMAGE \
  --attach PATH/TO/SECOND-IMAGE

Para definir o texto alt para uma imagem, adicione-o ao final do caminho após um #, no lugar de ALT-TEXT.

gh issue comment ISSUE-NUMBER --attach 'PATH/TO/IMAGE#ALT-TEXT'

Se você não fornecer texto alt, GitHub CLI usará o nome do arquivo.

Observação

Não há suporte para texto alt em arquivos de vídeo.

Inserindo um anexo no Markdown

Se o texto em Markdown já fizer referência a um arquivo local e você anexar esse mesmo arquivo com --attach, GitHub CLI reescreverá a referência no próprio texto para apontar para o arquivo enviado, em vez de acrescentar uma segunda cópia ao final. Isso permite que você escreva Markdown com caminhos locais comuns, visualize-o localmente onde as imagens são renderizadas e, em seguida, poste-o inalterado. A referência é reescrita independentemente da origem do texto do corpo: --body, , --body-fileentrada padrão ou editor de texto.

Inserindo uma imagem

Por exemplo, salve o seguinte conteúdo em PATH/TO/BODY-FILE:

The sign-in screen shows an error where the form should be:

![the sign-in screen showing an authentication error](PATH/TO/IMAGE)

Execute o seguinte comando com --body-file:

gh issue comment \
  ISSUE-NUMBER \
  --body-file PATH/TO/BODY-FILE \
  --attach PATH/TO/IMAGE

GitHub CLI substitui o caminho local pela URL carregada e mantém o texto markdown e alt. Quando uma referência é reescrita, o texto alt vem do Markdown, portanto, qualquer # texto alt no sinalizador se aplica somente aos arquivos que são acrescentados.

Qualquer arquivo anexado ao qual o corpo da mensagem não faz referência é adicionado ao final do corpo da mensagem, na ordem em que você passou as flags.

Inserindo um vídeo

Para incorporar um vídeo como player, salve a seguinte referência de imagem em Markdown em PATH/TO/VIDEO-BODY-FILE. A referência deve ser o único conteúdo em seu parágrafo.

![](PATH/TO/VIDEO)

Em seguida, anexe o mesmo vídeo:

gh issue comment \
  ISSUE-NUMBER \
  --body-file PATH/TO/VIDEO-BODY-FILE \
  --attach PATH/TO/VIDEO

GitHub CLI substitui toda a referência pela URL carregada, que é renderizada como um player. Se a referência aparecer dentro de uma frase, ela será renderizada como um link.

Limitações

O GitHub CLI só suporta o upload de arquivos de imagem e de mídia. Para obter uma lista de tipos de arquivo com suporte, consulte Anexando arquivos.