2013-07-09 37 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