2014-12-03 78 views
2

這裏是上下文:具有較早的git的更換工作目錄提交

  • 我使用的Eclipse中例如:It

  • 我提出了一些提交的,我沒有推到遠程倉庫

  • 我突然發現我的應用程序中的錯誤,這是不是有

如何使用早期的git提交快速更新我的工作目錄,直到找到引入該錯誤的第一個提交爲止?那麼我如何回到我最新的本地提交?

我最近使用了git git reset來完成這項工作,如果我沒有找到this answer,就會失去我最後一套git commit,因此必須有另一種更安全的方法來達到同樣的效果。

+0

聽起來你想[從以前的提交創建一個新的分支](http://stackoverflow.com/questions/2816715/branch-from-a-previous-commit-using-git)。完成實驗後,您可以切換回原始分支並根據需要合併更改。 – Ben 2014-12-03 06:20:12

+2

這會工作,但我意識到我錯過了一個重要的澄清在我的問題:我遇到了我的最新版本的代碼中的錯誤,並希望回到過去,直到錯誤不再出現。如果我必須爲每個我想檢查的舊版本創建一個分支,那很快會變得很麻煩。沒有另外一種方法可以在不創建任何分支的情況下實現相同的結果? – Lolo 2014-12-03 06:25:41

+1

看看[git bisect](http://git-scm.com/docs/git-bisect),它應該可以幫助你找到引入bug的提交。 – 2014-12-03 06:27:37

回答

1

我剛想出了我自己問題的答案。

這其實很簡單:

  1. 做早期版本的git的結帳,直到確定沒有表現出錯誤和不

  2. 然後做一個git切換到第一個的最後一個版本主版本要返回到最新的承諾版本

結帳不用於對代碼做進一步的更改,但是快速和有用的更新工作目錄,而不會混淆git目錄,這是快速查明git樹中新bug的外觀所需要的。

1

我遇到了我最新版本的代碼中的一個錯誤,並且想要回到過去,直到錯誤不再出現。

這就是所謂的git bisect,並且是not implemented in Egit

你應該考慮在命令行中使用git,以便launch a bisect session

+0

感謝:在搜索大量的提交版本時,它看起來像是一個有用的小工具。 – Lolo 2014-12-03 14:08:49

相關問題