我仍在寻找一个好的命令行(没有GUI )git merge工具,因为我不知道vim或emacs。我在how to use sdiff for merging上找到了以下内容,这看起来非常简单。
我似乎无法让sdiff正常工作。我目前在.gitconfig文件中有以下内容,但git mergetool
抱怨git config option merge.tool set to unknown tool: sdiff
。
[merge]
conflictstyle = diff3
tool = sdiff
[mergetool "sdiff"]
path = /usr/bin/sdiff
当我尝试cmd = sdiff $LOCAL $REMOTE
时在.gitconfig中使用git mergetool
我没有机会编辑任何内容,只是立即收到消息Was the merge successful? [y/n]
。
使sdiff作为git的合并工具的正确配置是什么?或者,如果你知道一个更好的命令行工具没有陡峭的学习曲线,我想知道。
编辑:这是我运行git mergetool时得到的结果:
Merging:
[list of files]
Normal merge conflict for 'xx/yy/zz.php':
{local}: modified file
{remote}: modified file
Hit return to start merge resolution tool (sdiff):
[Split screen of both versions]
xx/yy/zz.php seems unchanged.
Was the merge successful? [y/n]
答案 0 :(得分:0)
sdiff
是一种双向合并工具。我更喜欢3种合并工具。
详细了解为什么3路合并工具在此链接中不易出错:Why is a 3-way merge advantageous over a 2-way merge?
此处列出了一些最好的3路合并工具: What's the best three-way merge tool?