【问题标题】:How to PERMANENTLY link to a line number in GitHub?如何永久链接到 GitHub 中的行号?
【发布时间】:2017-07-17 20:17:47
【问题描述】:

链接到 GitHub 中的行号很简单:单击行编辑 URL 以指向该行,以便我们共享它。

但是,如果文件因新的提交而更改,行号可能会偏移,这会使现有链接变得不准确和混乱。

如何永久链接到 GitHub 中的一行代码?我经常遇到代码更改的旧链接。

然而我发现我可以选择一个提交的差异并像这样链接到那个差异,在这里,在base.pyline 150 上,例如: https://github.com/deepmind/sonnet/commit/60be2bb4ccd74230285c1c822452a99558915c50#diff-62bce8ca7517a19cdfdee428fc985bf1R150

但我认为链接到特定提交会令人困惑(或有点矫枉过正),因为提交可能根本不关心我想在文件中指向的内容。

有人有更简洁的方法来链接到 GitHub 中的行号吗? (例如:指向特定文件版本而不是提交会更干净 IMO)

【问题讨论】:

标签: git github hyperlink line-numbers


【解决方案1】:

您可以链接到提交的树而不是其差异,获取此链接的最简单方法是 GitHub 的永久链接键盘快捷键:单击分支树上的行后按 Y

如果您想从提交而不是分支到达那里,请使用标题中的“浏览文件”按钮。

手动构造,路径为:

/blob/<hash>/<path...>#L<line>

完成您的示例链接:

https://github.com/deepmind/sonnet/blob/60be2bb4ccd74230285c1c822452a99558915c50/sonnet/python/modules/base.py#L150

【讨论】:

  • 太棒了! “y”快捷方式不能是大写字母。 kbd 标记将其大写,尽管您将其写成小写。
  • @GuillaumeChevalier:你键盘上的键标不是大写的?如果我的意思是 Shift+Y,我会这样写。
  • 我建议对答案进行编辑。我的意思是按y 而不是Y 对我有用。但是,请参阅此处显示键盘快捷键的奇特方式将字母大写(至少,它在我的 Chrome for Linux 安装中将其大写):y.
  • @GuillaumeChevalier:Y 仅表示 Y 键。键盘上没有大写或小写的 Y 键。
【解决方案2】:

这几乎是不可能的。

您可以获得的最接近的是指向特定参考,例如通过单击提交中的“浏览文件”:

https://github.com/deepmind/sonnet/blob/60be2bb/sonnet/python/modules/base.py#L150

一个更简洁的解决方案可能是链接到一个特定的标签,假设它包含你的提交:

https://github.com/deepmind/sonnet/blob/v1.6/sonnet/python/modules/base.py#L150

但是,在某些情况下,您确实会冒从存储库历史记录中删除该提交的风险。但是,在维护良好的公共存储库中,提交引用和标签应该提供合适的链接。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-01-15
    • 2021-05-13
    • 2017-04-19
    • 1970-01-01
    • 2019-02-10
    • 2012-04-18
    相关资源
    最近更新 更多