如何列出冲突的文件(来自两个不同的分支)?

时间:2014-04-09 21:06:08

标签: git git-merge

AFAIK,git diff显示提交之间的所有差异,包括那些不会导致merge冲突的提交。

如果我要运行otherbranch,是否有办法在分支git merge otherbranch中列出那些会发生冲突的文件?有没有办法列出实际的冲突(有些diff - 格式)?

1 个答案:

答案 0 :(得分:1)

  

如果我要运行git merge otherbranch,是否有办法只列出分支otherbranch中存在冲突的文件?

当您运行git mergegit rebase时,您可以回到运行git reset --merge(或自{1.7}之后的git merge --abort)或{{1}之前的状态}。

此时您可以列出文件 git rebase --abort命令

  

有没有办法列出实际的冲突(以某种类似差异的格式)?

如果您想要一种智能方式来查看和编辑合并冲突,有很多方法可以使用3向合并视图,这取决于您最喜欢的环境设置。

在VIM示例中,您可以在gitconfig中绑定这两个命令

  

edit-unmerged = \       "!f(){git ls-files --unmerged | cut -f2 | sort -u; }; vim git diff --name-status --diff-filter=U"

     

add-unmerged = \       "!f(){git ls-files --unmerged | cut -f2 | sort -u; }; git add f"

并使用此方法处理3向合并 Fugitive.vim - resolving merge conflicts with vimdiff