我合并了一个远程分支到我的本地仓库,并创建了26个本地提交。如何撤消Git中的上次本地提交并返回到远程状态?
现在,我想恢复这种合并,但它认为将提交1还原为1或寻找远程版本的最后一次提交还原为非常枯燥和错误敏感。
我经历了How to undo last commit(s) in Git?这个帖子,它的答案很有意思,但是我没有找到任何简单的方法来做我的本地回复。
任何人都可以帮忙吗?
我合并了一个远程分支到我的本地仓库,并创建了26个本地提交。如何撤消Git中的上次本地提交并返回到远程状态?
现在,我想恢复这种合并,但它认为将提交1还原为1或寻找远程版本的最后一次提交还原为非常枯燥和错误敏感。
我经历了How to undo last commit(s) in Git?这个帖子,它的答案很有意思,但是我没有找到任何简单的方法来做我的本地回复。
任何人都可以帮忙吗?
使用git登录&的Git复位
git log
这会给你的消息,通过它可以识别您提交ID提交ID。
使用提交ID然后重置。
git reset <commit-id>
如果你永久想要回到那个提交。您可以使用以下内容。
git reset --hard <commit-id>
我试过一个或两个东西,这个人是有点脏,但它很简单,似乎工作:
git checkout -b tempo
git branch -D dirty_one
git checkout -b dirty_one origin/dirty_one
就是这样。
我觉得很脏的东西是坏地方提交仍然在当地回购,但分支不知道他们,所以他们可能会保持隐藏。
如果我重做我的合并(我其实已经做了),合并只是工作很好,但我不知道究竟如何(即脏的部分...)
可以重置为分行所以你可以通过'git reset --hard origin/master'来重新设置你最后一次与远程设备通信的远程主机。 –
@ LasseV.Karlsen可能认为origin/master将具有相同的提交id,因为OP没有提到origin/master和本地分支同步。 – harshitpthk
好的,但我正在寻找一个解决方案,而不使用commid id,并且当我将**合并到**我的本地分支时,我的目的是回到这个确切分支的远程状态。所以感谢@Lasse V. Karlsen @“Lasse V. Karlsen” – geekobi