2010-07-07 62 views
14

在混帳讓的說我犯A和B混帳取消復歸

A---[B] 

但後來我與

git revert HEAD 

恢復所以我有現在:

[A]---B 

怎麼辦我取消我的回覆,以便我可以回到B?

+0

我不確定在Git中如何使用術語「恢復」意味着,但通常情況下,恢復意味着覆蓋任何本地更改。所以只有一個取消刪除的工具可以幫助,但幾乎沒有機會。 – Andreas 2010-07-07 22:25:57

+2

@Andreas:在Git中,「回覆」是一個* new *提交,它反轉了一些早期提交的應用。 – 2010-07-07 22:30:26

+0

@Greg:謝謝你的清理。 – Andreas 2010-07-07 22:31:57

回答

41

你有兩個一般的選擇:

  • 還原的還原提交(創建第二復歸承諾,帶你回到原來的)
  • 扔掉的復歸與提交

git reset --hard HEAD^

第二個選擇離子只適用於如果您有而不是將您的更改推送到其他地方。事實上,如果你還沒有推你先恢復提交的任何地方是,你可以簡單地使用

的git的復位 - 硬

回滾而不產生任何復歸提交的。

+0

不要做重置 - 就像我一樣,我在回購站中丟失了所有外部文件! – 2018-01-01 10:55:08