我知道我可以链接到GitHub存储库中文件的特定行号(我相信我以前见过这个)。我该怎么做?
9jyewag01#
不要只链接到行号!请务必使用canonical URL。否则,当该文件被更新时,您将拥有一个指向错误行的URL!
如何永久链接到正确的行:
点击你想要的行号(如第18行),浏览器中的URL将在末尾添加一个#L18。您实际上单击了左侧的18,而不是代码行。看起来像这样:
#L18
18
现在你的浏览器的URL看起来像这样:
https://github.com/git/git/blob/master/README.md?plain=1#L18
如果要选择多行,只需按住Shift键并单击第二个行号,如第20行。看起来像这样:
https://github.com/git/git/blob/master/README.md?plain=1#L18-L20
重要的是:
现在,通过按Y键获取该特定提交的规范URL。浏览器中的URL将更改为如下所示:
https://github.com/git/git/blob/5bdb7a78adf2a2656a1915e6fa656aecb45c1fc3/README#L18-L20
该链接包含该特定提交的实际SHA-1哈希,而不是master上文件的当前版本。这意味着该链接将永远有效,不会指向该文件未来版本可能包含的第18-20行。现在,请尽情享受您的新永久链接的光辉吧。;-)在这个答案最初写出来之后,watashiSHUN 指出,GitHub现在已经使获得永久链接变得更容易了。选择一行或多行后,左侧会显示一个...菜单,如下所示:
master
...
请参见watashiSHUN's answer。请注意,GitHub不显示某些“可渲染”文件的行号,如Markdown文件。将?plain=1添加到url将显示源文件的行号,例如https://github.com/git/git/blob/master/README.md?plain=1。
?plain=1
https://github.com/git/git/blob/master/README.md?plain=1
w46czmvw2#
broc.seib has a sophisticated answer,但我只是想指出,而不是按Y获得永久链接,GitHub现在有一个非常简单的UI,可以帮助您实现它。1.单击行号选择一行,或按住Shift选择多行(与在File Explorer中选择多个文件夹的方式相同):
1.在所选第一行的右上角,展开...并单击 * 复制永久链接 *
1.就是这样。一个包含所选行和提交哈希的链接被复制到你的剪贴板:https://github.com/python/cpython/blob/c82b7f332aff606af6c9c163da75f1e86514125e/Doc/Makefile#L1-L4
https://github.com/python/cpython/blob/c82b7f332aff606af6c9c163da75f1e86514125e/Doc/Makefile#L1-L4
w1e3prcc3#
参见:
您可以使用永久链接在issues、PR等中包含代码片段。
参考文献:
Creating a permanent link to a code snippet
wtlkbnrh4#
单击行号,然后从地址栏复制并粘贴链接。若要选择一个范围,请单击该数字,然后按shift键单击后面的数字。或者,链接是一种相对简单的格式,只需使用文件链接将#L<number>附加到特定行号的末尾。下面是git存储库的README的第三行的链接:https://github.com/git/git/blob/master/README#L3
#L<number>
git
README
zzwlnbp85#
许多编辑器(但也请参阅下面的 * 命令 * 部分)支持链接到GitHub或Bitbucket(或其他)上的文件行号或范围。下面是一个简短的列表:
Open on GitHub
git-link
GitLink
gitlink-vim
t2a7ltrp6#
与如何将GitHub存储库的 * README.md * 文件链接到特定的代码行数有关你有三个案子:1.我们可以 * 链接到 *(自定义提交)但是 Link 将 * 始终 * 链接到旧文件版本,例如,它将 * 不 * 包含master分支中的新更新。示例:
https://github.com/username/projectname/blob/b8d94367354011a0470f1b73c8f135f095e28dd4/file.txt#L10
1.我们可以像(master-branch)一样 *link到 *(custom分支)。但链接将 * 始终 * 链接到最新的文件版本,其中将包含新的更新。由于有新的更新,链接可能指向无效的业务行号。示例:
https://github.com/username/projectname/blob/master/file.txt#L10
qkf9rpyu7#
我在寻找如何链接到GitHub wiki页面上的特定位置时遇到了一些麻烦,最终发现了这个问题。这可能是常识,但我不知道这一点,其他人可能会发现它很有用。当你浏览一个wiki文件时,你可以把鼠标放在一个特定的标题文本上,一个链接图标就会出现。单击此链接图标,您的浏览器导航URL将被更新(例如:https://github.com/user/repository/wiki/Test#title-1)。这将是指向wiki文件中特定位置的链接。
https://github.com/user/repository/wiki/Test#title-1
drnojrws8#
如果您想预览Markdown代码片段的渲染效果,请在复制另一个答案中提到的链接后,从链接中删除?plain=1参数。例如,下面将显示一个纯文本链接:
github.com/<organization>/<repository>/blob/<branch_name>/README.md?plain=1#L14
删除?plain=1参数后,将显示代码预览:
github.com/<organization>/<repository>/blob/<branch_name>/README.md#L14
有关详细信息,请参阅GitHub documentation: Creating a permanent link to a code snippet。
xkrw2x1b9#
获取拉取请求中的行。
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
只要L和R是正确的,这将带你到一条线。我不知道是否有一种方法可以访问L OR R。也就是说,如果PR添加了一行,则必须使用R。如果它删除了一行,则必须使用L。From:Generate line pointer URL into Github Pull Request
R
L
9条答案
按热度按时间9jyewag01#
不要只链接到行号!请务必使用canonical URL。否则,当该文件被更新时,您将拥有一个指向错误行的URL!
如何永久链接到正确的行:
点击你想要的行号(如第18行),浏览器中的URL将在末尾添加一个
#L18
。您实际上单击了左侧的18
,而不是代码行。看起来像这样:现在你的浏览器的URL看起来像这样:
如果要选择多行,只需按住Shift键并单击第二个行号,如第20行。看起来像这样:
现在你的浏览器的URL看起来像这样:
重要的是:
现在,通过按Y键获取该特定提交的规范URL。浏览器中的URL将更改为如下所示:
该链接包含该特定提交的实际SHA-1哈希,而不是
master
上文件的当前版本。这意味着该链接将永远有效,不会指向该文件未来版本可能包含的第18-20行。现在,请尽情享受您的新永久链接的光辉吧。;-)
在这个答案最初写出来之后,watashiSHUN 指出,GitHub现在已经使获得永久链接变得更容易了。选择一行或多行后,左侧会显示一个
...
菜单,如下所示:请参见watashiSHUN's answer。
请注意,GitHub不显示某些“可渲染”文件的行号,如Markdown文件。将
?plain=1
添加到url将显示源文件的行号,例如https://github.com/git/git/blob/master/README.md?plain=1
。w46czmvw2#
broc.seib has a sophisticated answer,但我只是想指出,而不是按Y获得永久链接,GitHub现在有一个非常简单的UI,可以帮助您实现它。
1.单击行号选择一行,或按住Shift选择多行(与在File Explorer中选择多个文件夹的方式相同):
1.在所选第一行的右上角,展开
...
并单击 * 复制永久链接 *1.就是这样。一个包含所选行和提交哈希的链接被复制到你的剪贴板:
https://github.com/python/cpython/blob/c82b7f332aff606af6c9c163da75f1e86514125e/Doc/Makefile#L1-L4
w1e3prcc3#
参见:
您可以使用永久链接在issues、PR等中包含代码片段。
参考文献:
Creating a permanent link to a code snippet
wtlkbnrh4#
单击行号,然后从地址栏复制并粘贴链接。若要选择一个范围,请单击该数字,然后按shift键单击后面的数字。
或者,链接是一种相对简单的格式,只需使用文件链接将
#L<number>
附加到特定行号的末尾。下面是git
存储库的README
的第三行的链接:https://github.com/git/git/blob/master/README#L3
zzwlnbp85#
许多编辑器(但也请参阅下面的 * 命令 * 部分)支持链接到GitHub或Bitbucket(或其他)上的文件行号或范围。下面是一个简短的列表:
Atom
Open on GitHub
Emacs
git-link
Sublime Text
GitLink
Vim
gitlink-vim
命令
t2a7ltrp6#
与如何将GitHub存储库的 * README.md * 文件链接到特定的代码行数有关
你有三个案子:
1.我们可以 * 链接到 *(自定义提交)
但是 Link 将 * 始终 * 链接到旧文件版本,例如,它将 * 不 * 包含master分支中的新更新。示例:
1.我们可以像(master-branch)一样 *link到 *(custom分支)。但链接将 * 始终 * 链接到最新的文件版本,其中将包含新的更新。由于有新的更新,链接可能指向无效的业务行号。示例:
**行业务含义,要在新文件中链接到它
**目标高亮代码长度可更改
qkf9rpyu7#
链接到GitHub wiki页面上的行号
我在寻找如何链接到GitHub wiki页面上的特定位置时遇到了一些麻烦,最终发现了这个问题。这可能是常识,但我不知道这一点,其他人可能会发现它很有用。
当你浏览一个wiki文件时,你可以把鼠标放在一个特定的标题文本上,一个链接图标就会出现。单击此链接图标,您的浏览器导航URL将被更新(例如:
https://github.com/user/repository/wiki/Test#title-1
)。这将是指向wiki文件中特定位置的链接。drnojrws8#
如果您想预览Markdown代码片段的渲染效果,请在复制另一个答案中提到的链接后,从链接中删除
?plain=1
参数。例如,下面将显示一个纯文本链接:
删除
?plain=1
参数后,将显示代码预览:有关详细信息,请参阅GitHub documentation: Creating a permanent link to a code snippet。
xkrw2x1b9#
获取拉取请求中的行。
只要L和R是正确的,这将带你到一条线。我不知道是否有一种方法可以访问L OR R。也就是说,如果PR添加了一行,则必须使用
R
。如果它删除了一行,则必须使用L
。From:Generate line pointer URL into Github Pull Request