从选定的分支恢复Git拉

我对git非常陌生,无法从google或者stackoverflow找到确切的解决方案。 我试着撤消git pull,如何将旧的状态回复好,但没有成功。

我基本上有"initial""pre_dev"分支。 通常我将我的初始分支代码合并到pre_dev分支中。

但今天我错误地将pre_dev拖入了initial 。 现在源代码树显示推送通知到初始。 所以请让我知道如何恢复这个。 所以我不需要推动这些改变。

经过这么多次尝试,我可以在源代码树中看到:

我不希望这会推到最初。 所以请在此帮助我。 并且很抱歉再次提出这个问题,如果已经由某人解决了任何其他的stackoverflow问题。 请帮助我作为初学者。 谢谢


如果你想摆脱所有提交的pre_devinitial我以为是不小心做了,那么你可以很容易地做到这一点使用Git复位,如下所示:

git reset --hard origin/initial

重要提示:您还将pre_devpre_dev之前完成的所有initial分支更改(如果有)。


通常你想使用git reset --hard将分支指针移回原来的位置。 正如Arpit所说,这可能是origin/initial ; 但是如果你有想要保持initial未经推送的更改(除了想要放弃的无意合并),那么你会想要其他的东西。

默认情况下,拉会在当前分支上创建一个合并提交。 所以在这种情况下,你可以

git reset --hard HEAD^

如果pull做了别的事情,那么使用reflog可能会更容易。

git reflog initial

会告诉你你initial参考文献最近指出的位置; 识别代表期望initial状态的提交。 这可能是列表中最近的一次提交,这意味着

git reset --hard initial@{1}
链接地址: http://www.djcxy.com/p/94791.html

上一篇: revert git pull from selected branch

下一篇: How to merge files which are modified in GIT