2013-07-09 40 views
2

這聽起來很奇怪,但我只是修改了一個提交來測試我的EDITOR環境變量。即使我沒有編輯提交消息或任何文件,我也不知道提交會被修改。有問題的提交是從開發分支合併到主分支並進行標記。雖然修改後,分支結構走遍靠不住:如何撤銷一個錯誤的提交 - 單元?

Screen shot

我不知道怎麼壞,這是或將有多少問題在未來造成的,但我不敢觸摸庫直到我知道更多。我真的希望在修改「增加的文檔」之前將版本庫重新恢復到原始狀態。承諾。開發分支應該指向「已添加的文檔」。將其合併到主分支,以及當前的「添加文檔」。提交不應該存在。

這可能嗎?


相關:

回答

15

你應該能夠做一個

git reflog 

然後找出提交你在之前你的「承諾 - 修改」。通常這將是HEAD @ {1}。現在做一個

git reset --soft [email protected]{1} 
+0

完美!在我的情況下,它是'HEAD @ {6}'。 – Hubro

+1

請注意,如果你只是使用gitk,這通常更容易。你已經知道你想要把頭移到哪個提交。只需從gitk複製sha並運行'git reset --soft ** SHA **' – Chronial