在给定提交哈希的GitHub上查找提交

在给定提交哈希的GitHub上查找提交,git,github,Git,Github,我是Github的新手,遇到了一个业余爱好者的问题 我被要求做一个代码审查,并提供了一个提交散列,但是如果我可以使用提交散列进行搜索,我尝试在Git中查找,但找不到任何内容 有没有一种方法可以通过使用提交哈希来查找更改的代码?格式为https://github.com///commit/将向您显示该提交中引入的更改。例如,我最近在GitHub上对我的一个项目进行了一次错误修复: 您还可以将哈希缩短为任何唯一前缀,如下所示: 我知道您刚刚询问了GitHub,但为了完整性:如果您从命令行签出了

我是Github的新手,遇到了一个业余爱好者的问题

我被要求做一个代码审查,并提供了一个提交散列,但是如果我可以使用提交散列进行搜索,我尝试在Git中查找,但找不到任何内容


有没有一种方法可以通过使用提交哈希来查找更改的代码?

格式为
https://github.com///commit/
将向您显示该提交中引入的更改。例如,我最近在GitHub上对我的一个项目进行了一次错误修复:

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


我知道您刚刚询问了GitHub,但为了完整性:如果您从命令行签出了存储库,您可以使用这两个命令中的任何一个实现基本相同的功能(唯一前缀在这里也起作用):

注意:如果您将提交哈希值缩短得太远,命令行将为您提供一条有用的消歧消息,但GitHub将只返回404。

查看单个提交:
https://github.com///commit/

查看日志:
https://github.com///commits/

查看完整回购:
https://github.com///tree/

可以是任何长度,只要它是唯一的。

最近将添加到GitHub的功能

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

更明确地说,您可以在搜索中添加
哈希:
前缀,但这并不是必需的


还有一个(在撰写本文时,它仍在预览中)。

我在尝试跟踪mongo中的断言时遇到了这个问题,并发现在给定提交哈希的情况下,查看特定文件时有一个类似的URL模式:-例如:
git log-p-1 35e32b6a00dec02ae7d7c45c6b7106779a124685
-1
是必需的,因为否则它将显示所有旧的提交;很高兴知道您可以使用散列的四个初始数字(在我的测试中是最小的),因为散列没有自动完成;您不能像这样指定分支:
git log master-p-1 35e3
。Git版本:1.7.9.5。还有一个OB,但有一个非常重要:同样,您不能指定分支,但当您提供哈希时,它会自动搜索本地和远程分支。因此,是的,在通过命令行合并到本地repo之前,您可以搜索特定的远程差异。如果有人想知道(我是!),这也适用于github:和命令行上的前8个哈希:
git log-p-1 35e32b6a
UI没有让这变得比现在更容易,这有点愚蠢。。。我希望功能请求能成功。我觉得很奇怪,github在搜索中不识别散列,如果有一个匹配该散列,则向您显示提交。实际上@CraigRinger,github搜索将匹配散列。事实上,如果您愿意,您可以在整个github中搜索七个字符的哈希前缀。但它必须是一个拉请求,而不仅仅是任何提交。@ToddOwen这很好,但不是重点。它应该匹配回购协议中的提交散列,当您在该回购协议中搜索时,它不匹配真的很奇怪。@CraigRinger现在终于匹配了!请参阅my。如果长度至少为7个字符,那么提交哈希的最小长度是4个字符(同样,只要它在整个存储库中是唯一的),我很惊讶它实际上是这样工作的。这太不直观了。默认情况下,Github将显示“代码”选项卡,其中显然没有结果。默认情况下,它不应该显示唯一一个包含任何结果的选项卡吗?因此,要清楚,如果您有自己的企业版github安装,您可以通过如下方式搜索任何repo中的提交:
https://YourGithubDomain/search?q=YOUR_COMMIT_HASH&type=Commits
请注意,我也在Github上尝试过这一点,而且它也在那里起作用,例如
https://github.com/search?q=38db172d13962ea177c00c9a3b4b3169b317e94b&type=Commits
git show 35e32b6a00dec02ae7d7c45c6b7106779a124685
git log -p -1 35e32b6a00dec02ae7d7c45c6b7106779a124685