2012-03-11 85 views
3

我想获取上次收到推送的ID(而不是git rev-parse HEAD)。如何获取git中最后一次推送的ID?

例如,如果我做git diff-tree --name-status master它会显示自上次推送以来的所有更改,但我希望看到特定推送的更改。

回答

4

如果你正在谈论(即你的回购)的最后推从给定的远程接收,对于一个给定的分支(如,例如,主):

git rev-parse origin/master 

(这blog post说明它通过列出自去年推的变化:
git log origin/master.. --stat

的命令也是在问题中使用“git erroneously states I'm ahead of origin/master by 1 commit”)

一旦您拥有了正确的SHA1,您可以查看“How can I see all the files that were modified/added/removed in the last push received?”了解更多信息。

+0

“如何查看上次收到的所有修改/添加/删除的文件?”是你最初的问题,但是展示了两个SHA1之间的差异树。 – VonC 2012-03-11 09:41:46

+0

谢谢VonC。没有编辑是在这个回购。它只收到推。所以,基于你的回答,我可以在最后一次推送时获得ID(这始终是HEAD),但在此之前推送的ID是什么?我需要这两个ID,所以我可以使用差异树来查看差异。 – trusktr 2012-03-11 18:31:18

+0

@trusktr有趣。这将是最后一次与'origin/master'和'master'合并的父项。 – VonC 2012-03-11 19:06:21