如何撤销 git --abort 命令

3

有没有办法撤销git的中止操作?场景是我在合并两个分支时运行了命令git merge,它显示一个错误信息说你有未提交的更改,因此我运行了git commit,现在出现了致命错误:存在合并冲突,中止操作以解决问题,于是我运行了命令git merge --abort。在这之后,我也失去了本地代码更改。有没有什么办法可以撤消中止或找回本地代码。


你丢失的更改是你尝试合并的分支的一部分还是独立的更改? - padawin
4个回答

4
撤销中止操作其实就是重新执行合并操作。因此,重新运行git merge以重新开始操作,使用git mergetool解决冲突,最后运行git commit完成合并。如果您不知道如何使用git mergetool,可以参考这篇指南:https://gist.github.com/karenyyng/f19ff75c60f18b4b8149

4
抱歉,如果在失败的合并开始和--abort之间没有提交您的更改,那么它们就没有保存在任何地方。您不仅需要重新执行合并,还需要重新做这些更改(尽管分别执行可能是个好主意)。

但我该怎么做呢?我只想要我的本地更改返回。 - Ahmad
@Ahmad,你失去的只是在合并之前最后一次提交和现在之间所做的更改。我知道这听起来很严峻,但除非你的IDE存储了你本地更改的任何内容(正如Ganesa所暗示的那样),否则希望不大。 - Romain Valeri
2
@Ahmad 如果你正在使用像EclipseIntellij这样的IDE,每个单独文件都有一个名为“本地历史记录”的选项(对于少量文件非常有用)。 - Dwhitz

3
答案很明确,如果你在Git中查找,那么,因为它不会记录你未提交和删除的本地更改,但你可以检查你的IDE,看看是否有本地历史记录可供使用。

是的,我正在寻找一个Git命令解决方案,因为我也在本地丢失了代码。 - Ahmad
2
抱歉,我的朋友,我们在git中没有选项。 - Ganesa Vijayakumar

0
除了其他答案之外,如果您使用某个 Git 客户端运行了 --abort 命令,请使用 git stash list 检查您的 Git 存储区,很有可能客户端在重置您的工作树之前存储了所有更改。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接