git-revert - commit is a merge but no -m option was given - 如何将 Git 仓库恢复到之前的提交?

git reset撤销 / git / git-checkout / git-reset

如何从当前状态恢复到某次提交时的快照?

$ git log
commit a867b4af366350be2e7c21b8de9cc6504678a61b`
Author: Me <me@me.com>
Date:   Thu Nov 4 18:59:41 2010 -0400

blah blah blah...

commit 25eee4caef46ae64aa08e8ab3f988bc917ee1ce4
Author: Me <me@me.com>
Date:   Thu Nov 4 05:13:39 2010 -0400

more blah blah blah...

commit 0766c053c0ea2035e90f504928f8df3c9363b8bd
Author: Me <me@me.com>
Date:   Thu Nov 4 00:55:06 2010 -0400

And yet more blah blah...

commit 0d1d7fc32e5a947fbd92ee598033d85bfc445a50
Author: Me <me@me.com>
Date:   Wed Nov 3 23:56:08 2010 -0400

Yep, more blah blah.

Paolo



Answer #1

我试过很多方法来恢复 Git 的局部变化,如果你只是想恢复到最新的提交状态,似乎这个方法最有效。

git add . && git checkout master -f

我找到了一个更方便、更简单的方法来达到上面的效果。

git add . && git reset - 固执的人