Respostas:
Não basta ligar para os números de linha! Certifique-se de usar o URL canônico também. Caso contrário, quando esse arquivo for atualizado, você terá um URL que aponta para as linhas erradas!
Como criar um link permanente para as linhas corretas:
Clique no número da linha que você deseja (como a linha 18) e o URL no seu navegador será #L18
pregado no final. Você literalmente clica no 18
lado esquerdo, não na linha de código. Se parece com isso:
E agora o URL do seu navegador fica assim:
https://github.com/git/git/blob/master/README#L18
Se você deseja selecionar várias linhas, basta manter pressionada a tecla Shift e clicar no número da segunda linha, como a linha 20. É assim:
E agora o URL do seu navegador fica assim:
https://github.com/git/git/blob/master/README#L18-L20
Aqui está a parte importante:
Agora obtenha o URL canônico para esse commit específico pressionando a y
tecla O URL no seu navegador mudará para se tornar algo como isto:
https://github.com/git/git/blob/5bdb7a78adf2a2656a1915e6fa656aecb45c1fc3/README#L18-L20
Esse link contém o hash SHA real para essa confirmação específica, em vez da versão atual do arquivo master
. Isso significa que esse link funcionará para sempre e não apontará para as linhas 18 a 20 de qualquer versão futura desse arquivo.
Agora aproveite o brilho do seu novo link permanente. ;-)
atualização 29/09/2017: Conforme apontado por @watashiSHUN, o github agora tornou mais fácil obter o link permanente fornecendo um ...
menu à esquerda após a seleção de uma ou mais linhas. Por favor, vote também na resposta de @ watashiSHUN .
atualização 25/03/2016: caso em questão - no exemplo acima, me referi ao arquivo "README" no URL. Esses URLs não canônicos realmente funcionaram quando esta resposta foi escrita. Mas agora esses URLs não funcionam mais desde que README
foram movidos README.md
. Mas a URL canônica com o hash SHA ainda funciona, conforme o esperado.
y
chave também ... help.github.com/articles/getting-permanent-links-to-files
L18-L20,L29
e que uma pessoa pudesse CTRL
clicar para adicionar linhas não consecutivas. Eu acho que sua ideia é uma ótima sugestão e seria muito útil.
README
for README.md
?
O @ broc.seib tem uma resposta sofisticada , só quero salientar que, em vez de pressionar y
para obter o link permanente, o github agora tem uma interface muito simples que ajuda você a alcançá-lo
Selecione a linha clicando no número da linha ou selecione várias linhas descendo shift
(o mesmo que você seleciona várias pastas no explorador de arquivos)
no canto direito da primeira linha selecionada, expanda ...
e clique emcopy permalink
https://github.com/python/cpython/blob/c82b7f332aff606af6c9c163da75f1e86514125e/Doc/Makefile#L1-L4
Clique no número da linha e copie e cole o link na barra de endereços. Para selecionar um intervalo, clique no número e, em seguida, clique com a tecla Shift pressionada no número posterior.
Como alternativa, os links são um formato relativamente simples, basta anexar #L<number>
ao final o número de linha específico, usando o link para o arquivo. Aqui está um link para a terceira linha do git
repositório README
:
y
. ;-)
Você pode usar permalinks para incluir trechos de código em problemas, PRs etc.
Referências:
https://help.github.com/en/articles/creating-a-permanent-link-to-a-code-snippet
Muitos editores (mas também a seção Comandos abaixo) suportam links para o número da linha ou intervalo de um arquivo no GitHub ou BitBucket (ou outros). Aqui está uma pequena lista:
Relacionado a como vincular o README.md
repositório GitHub a um número de linha específico de código
Você tem três casos:
Podemos vincular a ( confirmação personalizada )
Mas o Link SEMPRE vinculará à versão antiga do arquivo, que NÃO contém novas atualizações na ramificação principal, por exemplo. Exemplo:
https://github.com/username/projectname/blob/b8d94367354011a0470f1b73c8f135f095e28dd4/file.txt#L10
Podemos vincular a ( filial personalizada ) como (filial principal). Mas o link SEMPRE vinculará à versão mais recente do arquivo que conterá novas atualizações. Devido a novas atualizações, o link pode apontar para um número de linha comercial inválido. Exemplo:
https://github.com/username/projectname/blob/master/file.txt#L10
O GitHub NÃO pode vincular automaticamente a qualquer arquivo para (confirmação personalizada) nem (ramificação mestre) devido aos seguintes problemas de negócios:
Para uma linha em uma solicitação pull.
https://github.com/foo/bar/pull/90/files#diff-ce6bf647d5a531e54ef0502c7fe799deR27
https://github.com/foo/bar/pull/
90 <- PR number
/files#diff-
ce6bf647d5a531e54ef0502c7fe799de <- MD5 has of file name from repo root
R <- Which side of the diff to reference (merge-base or head). Can be L or R.
27 <- Line number
Isso o levará a uma linha, desde que L e R estejam corretos. Não tenho certeza se existe uma maneira de visitar L OR RIe Se o PR adicionar uma linha que você deve usar R
. Se ele remover uma linha, você deverá usar L
.