2011-03-21 154 views

回答

6

看看git bisect。這聽起來像你正在尋找的。

基本上,你告訴它一個已知的好點和歷史上已知的壞點,然後它可以幫助你執行二分搜索,直到你找到違規提交。

這裏有一個關於它的使用教程:http://www.kernel.org/pub/software/scm/git/docs/user-manual.html#using-bisect

但是,如果你不想這樣做的,創建一個臨時黨支部你現在哪裏,要麼做一堆git reset HEAD^上去一個一次提交,或者爲您和臨時提交之間的每個後續提交執行git reset HEAD~8,然後執行git cherry-pick <sha1>

1

將您的主人克隆到另一個分支,然後將主人git reset --hard克隆到有問題的提交中。然後使用git cherry pick將備份分支中的每個已還原的提交介紹給主分支並進行檢查。如果一切正常,然後繼續下一次提交等。

如果你不熟悉它們,請在實際操作前仔細閱讀我所述的命令。 :-)

+1

我認爲你的意思是'git reset',而不是'git revert'。 – Jonathan 2011-03-21 15:36:49

+0

我修正了這個問題。如果你想拋棄工作目錄的改變,那麼Git reset很有用。 – Shinnok 2011-03-21 15:44:08

相關問題