我在master
分支上,我正在做一些我不记得的事。
然后我做了git pull
,我又提交了20多个提交。
现在我要撤消想要在git pull之前提交我的地方
答案 0 :(得分:2)
试
git reset --hard HEAD@{1}
它应该是之前的HEAD
ORIG_HEAD是HEAD的先前状态,由具有的命令设置 可能是危险的行为,很容易还原它们。它少了 现在有用,因为Git有reflog:HEAD @ {1}大致相当于 ORIG_HEAD(HEAD @ {1}始终是HEAD的最后一个值,ORIG_HEAD是最后一个 危险操作前HEAD的值。)
答案 1 :(得分:2)
运行git reflog
将为您提供HEAD
所指向的所有提交的列表(HEAD
是指定您当前提交的内容,例如,如果您是在master
然后HEAD
将指向master
上的最新提交。
看起来像这样:
e6832cb HEAD@{0}: pull: Fast-forward
e251737 HEAD@{1}: checkout: moving from my_branch to master
bb14227 HEAD@{2}: commit: Here's a comment
如果您刚刚完成了git pull
而没有其他任何内容,那么您在git pull
之前提交的提交应该是HEAD@{1}
左侧的提交
从那里你可以使用该提交哈希回到你想要的地方。