如何链接到github上的特定行号

如何链接到github上的特定行号,github,Github,我知道我可以链接到github repo上的文件上的特定行号(我肯定我以前见过这个) 有人能告诉我怎么做吗?单击行号,然后从地址栏复制并粘贴链接。要选择一个范围,请单击该数字,然后按住shift键并单击后面的数字 或者,链接是一种相对简单的格式,只需使用指向文件的链接,在特定行号的末尾附加#L。这里有一个链接,指向git存储库的README的第三行: 不要只链接到行号!一定要用同样的方法。否则,当该文件更新时,您将有一个指向错误行的URL 如何建立到右行的永久链接: 单击所需的行号(如第18行

我知道我可以链接到github repo上的文件上的特定行号(我肯定我以前见过这个)


有人能告诉我怎么做吗?

单击行号,然后从地址栏复制并粘贴链接。要选择一个范围,请单击该数字,然后按住shift键并单击后面的数字

或者,链接是一种相对简单的格式,只需使用指向文件的链接,在特定行号的末尾附加
#L
。这里有一个链接,指向
git
存储库的
README
的第三行:


不要只链接到行号!一定要用同样的方法。否则,当该文件更新时,您将有一个指向错误行的URL

如何建立到右行的永久链接:

单击所需的行号(如第18行),浏览器中的URL将在末尾添加一个
#L18
。您可以直接单击左侧的
18
,而不是代码行。看起来像这样:

https://github.com/git/git/blob/master/README#L18
https://github.com/git/git/blob/master/README#L18-L20
https://github.com/git/git/blob/5bdb7a78adf2a2656a1915e6fa656aecb45c1fc3/README#L18-L20

现在浏览器的URL如下所示:

https://github.com/git/git/blob/master/README#L18
https://github.com/git/git/blob/master/README#L18-L20
https://github.com/git/git/blob/5bdb7a78adf2a2656a1915e6fa656aecb45c1fc3/README#L18-L20
如果要选择多行,只需按住shift键并单击第二行号,如第20行。看起来像这样:

https://github.com/git/git/blob/master/README#L18
https://github.com/git/git/blob/master/README#L18-L20
https://github.com/git/git/blob/5bdb7a78adf2a2656a1915e6fa656aecb45c1fc3/README#L18-L20

现在浏览器的URL如下所示:

https://github.com/git/git/blob/master/README#L18
https://github.com/git/git/blob/master/README#L18-L20
https://github.com/git/git/blob/5bdb7a78adf2a2656a1915e6fa656aecb45c1fc3/README#L18-L20
这里是重要的部分:

现在通过按
y
键获取该特定提交的规范url。浏览器中的URL将更改为以下内容:

https://github.com/git/git/blob/master/README#L18
https://github.com/git/git/blob/master/README#L18-L20
https://github.com/git/git/blob/5bdb7a78adf2a2656a1915e6fa656aecb45c1fc3/README#L18-L20
该链接包含该特定提交的实际SHA哈希,而不是
master
上文件的当前版本。这意味着该链接将永远有效,而不会指向该文件未来版本的第18-20行

现在,沐浴在新的永久链接的光辉中。;-)

2017年9月29日更新:正如@watashsun所指出的,github现在通过在您选择一行或多行后在左侧提供一个
菜单,更容易获得永久链接。请也投票

更新日期:2016年3月25日:举个例子——在上面的例子中,我提到了URL中的“自述文件”。这些非规范URL在编写此答案时实际起作用。但是现在,由于
README
被移动到
README.md
,这些URL不再工作。但带有SHA哈希的规范URL仍然可以正常工作。

许多编辑器(但也可以参见下面的命令部分)支持链接到GitHub或BitBucket(或其他)上的文件行号或范围。下面是一个简短的列表:

原子

Emacs

崇高的文本

维姆


命令
  • -Git子命令,用于获取指向Git对象的repo浏览器链接
  • -打开与shell的当前分支和工作目录匹配的github URL
    • 我只想指出,github现在没有按
      y
      来获取永久链接,而是有一个非常简单的UI来帮助您实现它

    • 单击行号选择行,或按住shift键选择多行(与在“文件资源管理器”中选择多个文件夹的方式相同)

    • 在所选第一行的右角,展开
      并单击
      复制永久链接

    • 就是这样,一个带有选定行和提交散列的链接被复制到剪贴板上
      https://github.com/python/cpython/blob/c82b7f332aff606af6c9c163da75f1e86514125e/Doc/Makefile#L1-L4
    • 您可以使用永久链接在问题、PRs等中包含代码片段

      参考文献:


      有关如何将GitHub存储库的
      README.md
      链接到特定代码行号

      您有三个案例:

    • 我们可以链接到(自定义提交)

      但链接总是链接的 更新到旧文件版本,该版本中不包含新的更新 例如master branch。例如:

      https://github.com/username/projectname/blob/b8d94367354011a0470f1b73c8f135f095e28dd4/file.txt#L10
      
    • 我们可以像(主分支)一样链接到(自定义分支)。 但是链接将始终链接到最新的文件版本,其中将包含新的 更新。由于新的更新,链接可能指向无效的业务线编号。 例如:

    • GitHub无法自动链接到任何文件(自定义) 提交)或(主分支) 由于以下业务问题:

      • 业务含义,在新文件中链接到它
      • 可更改的目标突出显示代码的长度

    • 对于拉取请求中的行

      https://github.com/foo/bar/pull/90/files#diff-ce6bf647d5a531e54ef0502c7fe799deR27
      
      https://github.com/foo/bar/pull/
      
      90不要忘记,如果文件更改,此URL仍将指向第3行,其中可能包含新代码,并且可能不是您想要的!我提供了另一个解决方案,可以产生永久链接。提示:只需按
      y
      ;-)链接断开了y键对我没有任何作用。有没有改变?正在谷歌Chrome开发频道尝试。它仍然有效。。。文档仍然说也要使用
      y
      键。。。按住shift键并单击块的第二行是一个好方法!我正在手动编辑URL以添加第二行:)。接下来的问题是,如果我想突出显示第2行、第4行和第17-22行,该怎么办?这是可能的还是我一次只能突出显示一个块?@tr3buchet我刚刚ping了github支持——目前不可能。他们说他们会考虑这个特点,但没有承诺。我提供的格式类似于
      L18-L20,L29
      ,用户可以
      CTRL
      -单击添加非连续行。我认为你的想法是一个很好的建议,非常有用。如果
      README
      README.md
      ,那该怎么办?非常漂亮的gif!对不起,这是个离题的话题,但是你用什么工具来制作它呢?@GiovanniBenussi它来自GitHub。请参阅链接。我是指gif:-Phahaha@Giovanni