如何在 GitHub 上的问题评论中引用提交?

Posted

技术标签:

【中文标题】如何在 GitHub 上的问题评论中引用提交?【英文标题】:How can I reference a commit in an issue comment on GitHub? 【发布时间】:2012-02-13 04:19:50 【问题描述】:

我找到了很多关于如何在 git 评论中引用 GitHub 问题的答案(使用 #xxx 表示法)。 我想在我的评论中引用一个提交,生成提交详细信息页面的链接?

【问题讨论】:

Github 也适合帮助中心列出的“程序员常用的软件工具”。似乎适合保留在 *** 中。 【参考方案1】:

要引用一个提交,只需编写它的 SHA-hash,它就会自动变成一个链接。

另见:

Autolinked references and URLs / Commit SHAs 部分 在 GitHub 上写作

【讨论】:

请注意,您无需编写完整的哈希。像往常一样,一个前缀 (2dd190e) 就足够了。 请显示https://github.com/PRJ/issues/NUMBER?VERSION?的语法或链接示例 @PeterKrauss:没有特殊的语法。只需编写提交哈希,它就会自动链接。 请注意,这仅适用于您正在为其编写问题的 repo 或其分支的提交。我有一个案例,我的分叉突然被取消分叉,我注意到这个提交技巧不再起作用了。 您可能还想检查项目名称,即:您所做的评论是否与您提交代码的存储库相同。对我来说,我有一个存储库来记录所有需求项,另一个用于管理我的真实代码,所以当我向我的需求存储库添加评论时,我写道:repository@commit_hash【参考方案2】:

上面的答案缺少一个可能不明显的例子(对我来说不是)。

网址可以分解成几部分

https://github.com/liufa/Tuplinator/commit/f36e3c5b3aba23a6c9cf7c01e7485028a23c3811
                  \_____/\________/       \_______________________________________/
                   |        |                              |
            Account name    |                      Hash of revision
                        Project name              

Hash 可以在这里找到(你可以点击它,从浏览器中获取 url)。

希望这可以为您节省一些时间。

【讨论】:

那里有漂亮的 ascii 艺术 您也可以使用git log 获取它,它将显示在commit <SHA> 的行上。如果这不起作用,则可能是您没有执行git push origin master。另外,github中存在一个bug,后面必须至少有一个字符,否则不会被检测到。它可以只是换行符或句点。 删除上面的引用。它可能会排在首位。【参考方案3】:

如果您尝试在问题所在的另一个 repo 中引用提交,您可以在提交短哈希前加上 reponame@

假设您的提交位于名为 dev 的 repo 中,而 GitLab 问题位于名为 test 的 repo 中。如果有意义,您可以对该问题发表评论并通过 dev@e9c11f0a 引用提交(其中 e9c11f0a 是您要链接到的提交的 sha 哈希的前 8 个字母)。

【讨论】:

这需要更正(至少在 Github 上),因为您需要 username/reponame@hash 来识别分叉。【参考方案4】:

只需将提交引用链接粘贴到评论中 github 会自动在评论中提及提交。

【讨论】:

【参考方案5】:

我认为没有人回答过这个问题,也许十年前不可能。

但是现在,根据github documentation,不需要哈希。这样就可以做到:

个人账户

Username/Repository# 并发出或拉取请求编号

例子:https://github.com/aUser/user-repo/issues/23的问题

使用:aUser/user-repo#26

组织

Organization_name/Repository# 并发出或拉取请求编号

例子:https://github.com/an-org/theirproject/issues/1000的问题

使用:an-org/theirproject#1000

【讨论】:

以上是关于如何在 GitHub 上的问题评论中引用提交?的主要内容,如果未能解决你的问题,请参考以下文章

如何使用“$ git commit”在消息开头引用问题(gitlab,github)? [复制]

如何阻止机器人和垃圾邮件提交评论?

如何将代码提交到 Github 上的子文件夹

如何引用 github 上的代码?

在提交到 github 之前,如何测试我的 readme.md 文件的外观?

如何在 GitHub 上恢复拉取请求提交