在给定提交哈希的情况下在GitHub上找到提交

dop*_*ner 261 git github

我对Github相当新,遇到了一个业余问题.

我被要求做一个代码审查,并提供了一个提交哈希,但我已经尝试查找Git,如果我可以使用提交哈希搜索但找不到任何东西.

有没有办法只使用提交哈希就可以找到更改后的代码?

Mat*_*nry 356

表单的URL https://github.com/<owner>/<project>/commit/<hash>将显示该提交中引入的更改.例如,这是我最近对GitHub上的一个项目所做的错误修正:

https://github.com/jerith666/git-graph/commit/35e32b6a00dec02ae7d7c45c6b7106779a124685

您还可以将哈希缩短为任何唯一的前缀,如下所示:

https://github.com/jerith666/git-graph/commit/35e32b


我知道你刚刚问过GitHub,但是为了完整性:如果你从命令行检查了存储库,你可以用这些命令中的任何一个实现基本相同的东西(这里也有唯一的前缀):

git show 35e32b6a00dec02ae7d7c45c6b7106779a124685
git log -p -1 35e32b6a00dec02ae7d7c45c6b7106779a124685
Run Code Online (Sandbox Code Playgroud)

  • 有点愚蠢的是UI不会让它变得比这更容易......我希望功能请求能够实现它. (7认同)
  • 如果有人想知道(我是!),这也适用于 github 上的前 8 个哈希值:https://github.com/jerith666/git-graph/commit/35e32b6a 和命令行:`git log -p -1 35e32b6a` (2认同)

qwe*_*guy 43

查看单个提交:
https://github.com/<user>/<project>/commit/<hash>

查看日志:
https://github.com/<user>/<project>/commits/<hash>

查看完整的回购:
https://github.com/<user>/<project>/tree/<hash>

<hash> 可以是任何长度,只要它是唯一的.

  • 如果长度至少为 7 个字符就可以 (3认同)
  • 提交哈希的最小长度不是4个字符(同样,只要它在整个存储库中是唯一的) (2认同)

Tod*_*wen 19

最近在GitHub中添加了搜索提交的功能.

要搜索哈希,只需在搜索框中输入至少前7个字符即可.然后在结果页面上,单击"提交"选项卡以查看匹配的提交(通常仅在默认分支上master),或单击"问题"选项卡以查看包含提交的提示请求.

为了更明确,您可以hash:在搜索中添加前缀,但这并不是必需的.

还有一个REST API(在编写时它仍处于预览状态).

  • 我很惊讶它实际上以这种方式工作。太不直观了。默认情况下,Github将显示“代码”选项卡,其中显然没有结果。默认情况下,它不应该显示唯一带有任何结果的选项卡吗? (2认同)
  • 所以要明确的是,如果您有自己的 github 企业安装,您可以通过搜索来找到任何存储库中的任何提交,如下所示:``https://YourGithubDomain/search?q=YOUR_COMMIT_HASH&amp;type=Commits```我也在 Github 上尝试过,它也在那里工作,例如 ```https://github.com/search?q=38db172d13962ea177c00c9a3b4b3169b317e94b&amp;type=Commits``` (2认同)
  • 到 2022 年,我们仍然无法使用 GitHub.com 搜索在所有分支中搜索哈希,这似乎有点疯狂。接受的答案中基于 URL 的解决方案很笨重,但可能会可靠地工作直到时间结束。 (2认同)