GIT在特定提交之前获取提交哈希

tra*_*lad 28 git shell centos

git 1.7.1

git show <hash>:<file> 根据提供的提交哈希给我文件

我试图弄清楚如何在我的哈希值之前下注前一次提交的文件.

我知道我总是可以使用它log来获取所有哈希并找出我需要的那个但是在我的情况下这不是一个好的解决方案,因为我试图最小化我需要为性能问题做的命令数量.

想知道是否有一个简单的方法.

Nik*_*pta 36

使用git show HEAD^1.您可以HEAD使用commit-hash 替换

编辑以考虑多个父母:

如果您想要查看提交哈希的所有父项,您可以在问题的注释中使用git rev-list --parents -n 1 <commithash>或使用git show@Bhaskar建议.

在其他的方式以及解释在这里.

  • @Jubobs 如果 HEAD 有多个父级,那么 OP 试图做的事情本质上是模棱两可的,在这种情况下可能没有一个好的答案。使用`git show &lt;sha&gt;^1:&lt;file&gt;` 将显示文件,因为它存在于第一个父级中,并且大部分时间都是需要的...... (3认同)
  • 如果`HEAD`有多个父级,则此命令仅显示第一个父级. (2认同)