2012-03-11 81 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