Git:重置 - 现在我被困在了过去

Gab*_*abe 9 git

reset在阅读Pro Git书中的内容之后,我一直在搞乱.

我基本上最终做了reset --hard一个修改12提交之前.

我似乎无法回到现在,或最新的提交.我已经尝试过reset使用ORIG_HEAD甚至在修订版的sha1中提供它以继续前进.

git status我得到的运行:你的分支落后于12次提交,可以快进.

如何将HEAD移回最新提交?

Nou*_*him 12

使用reflog找出你想去的地方.您可以使用它git reflog,然后只需重置为适当的提交.假设您在重置后没有做任何事情,

git reset --hard 'HEAD@{1}'
Run Code Online (Sandbox Code Playgroud)

应该这样做.

  • 不.当您执行`git reflog`时,您将获得`HEAD`指向的提交列表.`HEAD @ {n}`将是第n个旧提交.您将在提交列表中具有HEAD的先前位置,`git reset --hard`.我无法更清楚地描述它. (2认同)

Mic*_*ior 4

似乎您已经推送了重置的 12 个提交。如果是这样的话,那么

git merge --ff-only REMOTE/BRANCH_NAME
Run Code Online (Sandbox Code Playgroud)

应该可以工作,其中REMOTE是远程名称(通常origin),BRANCH_NAME是当前分支的名称。