2012-07-27 42 views
0

後,我有一個混帳回購協議是這樣的:混帳回來SHA-1檢查出的舊版本

rev3 
rev2 
rev1 
Init repo 

和我籤REV1,

然後我git log的樣子:

rev1 
Init repo 

那麼我該如何回到rev3?在結帳之前,我是否必須始終複製粘貼git日誌? 這似乎是我無法接受的。我通過Go to particular revision閱讀,但這不是我想要的答案,我相信必須有某種方式才能做到這一點,而不需要複製粘貼,就像tortoiseHg完成一樣。

回答

1

如果你只是做了checkout回到rev1,那麼當你提交時你的分支仍然指向rev3,所以只需簽出該分支並且你應該很好。但是,如果您執行了硬重置,那麼您必須檢查reflog(git reflog)以獲取rev3的SHA。

+0

謝謝!我就是這個意思!順便說一句,我有點混淆'恢復''重置'和'結帳'。有什麼不同? – shengy 2012-07-27 08:37:20

+0

我會推薦閱讀ProGit的書。它可以在線免費獲取(http://git-scm.com/book),但它也可以作爲印刷書籍。 – dunni 2012-07-27 08:46:40

+0

我其實正在讀這本書:) – shengy 2012-07-27 09:03:18