git - 在 fugitive.vim 冲突差异中显示基础

标签 git vim git-merge vim-fugitive

默认情况下,如果您使用 fugitive.vim在与 git 冲突的文件缓冲区上的 :Gdiff,你将得到一个 three way diff显示 HEAD、工作副本(带有冲突标记)和 merge

我喜欢设置git config merge.conflictstyle diff3includes the base (冲突标记中 HEADmerge 的最近共同祖先。

不幸的是,即使在 fugitive.vim 中使用 diff3 作为 conflictstyle,您仍然只能得到 3 个 Pane (没有基础)。

有谁知道如何在另一个 Pane 中显示它?理想情况下关于工作副本。

This comment Tim Pope 似乎提供了一些线索,但我不太明白。

最佳答案

您可以通过以下步骤完成:

  • :split - 进行水平分割
  • :Gdiff - 顶部窗口中的差异
  • ctrlw + j - 将焦点移至底部窗口
  • Gedit :1 - 在底部窗口加载祖先

Gedit :2 加载 head 和 Gedit :3 加载 merge

关于git - 在 fugitive.vim 冲突差异中显示基础,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12682164/

相关文章:

vim - 使用vim-airline在vim中的选项卡之间切换

git - 如何将部分历史记录从 git 分支传输到新存储库?

windows - 更新Windows文件夹中的所有git repos

git - 我的 git 分支在 Sourcetree 中显示 'origin/master' 和 'origin/HEAD',我不知道如何 merge 两者

git - pull 请求是否接受来自源分支的 future 提交

Vim 打开光标下的文件

vim如何折叠一个html标签

Git:准备好真正的 merge 提交后,如何创建一个简单的提交?

git - 有没有办法防止两个分支在git中 merge

java - Git:将文件自动 merge 为冲突文件