git - 如何在不保存的情况下成功退出 "vimdiff"(用作 "git"的 merge 工具)?

标签 git ubuntu vim merge vimdiff

我是新手,所以对基本问题表示歉意。

我正在使用 Ubuntu 环境。我有 混帐安装。我设置 vimdiff 作为 merge 工具。

我正在测试环境,但我遇到了问题。

我在 readme.txt 中创建了冲突文件。当我尝试从分支 merge 时,显然会发生冲突。开发大师 .正如所料,一些“标记字符”被添加到 readme.txt。指示冲突发生的位置。所以,下一步是调用git mergetool启动 vimdiff .

到目前为止,一切都按预期工作, vimdiff 现已推出。但后来,我决定退出 vimdiff 不做任何改变。我想将我的更改“推迟”到另一个时间。所以,我按 <ESC>后跟 :qa! ,认为这将停止 merge 过程。不幸的是,事实并非如此。看起来 merge 现在被认为已解决并成功,readme.txt文件,虽然没有改变,虽然包含冲突标记,但现在可以提交了。

现在我的问题。如何终止 git mergetool调用,退出 vimdiff ,然后重新开始,好像我没有打电话一样?

谢谢。

最佳答案

使用:cquit , 或 git merge --abort并再次 merge 。

关于git - 如何在不保存的情况下成功退出 "vimdiff"(用作 "git"的 merge 工具)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60013299/

相关文章:

git - 很难理解 git-fetch

在 Ubuntu 上运行应用程序时出现 Grails 依赖错误

python - 缺少 Python.h 并且无法找到

Vim 相当于 "tr"命令

Vim:删除所有包含模式的行的字符

php - 我可以使用 vim "star"搜索来搜索 PHP 类成员和方法吗?

git - 如何使用 Git 为现有项目创建新的 'Local' 远程存储库

git - 如何从上次提交中删除某些行并将它们添加到 git 中的新提交中?

windows - Windows 上的 Git : "merging" 2 directories with the same name but different case

linux - plone.app.caching 和设置 Varnish 以清除缓存