如何将kdiff3设置为SVN的合并工具

gru*_*czy 27 svn merge conflict kdiff3

当SVN通知我冲突时,我希望能够使用kdiff3解决冲突.如何将其设置为此默认工具?

Jon*_*tez 31

转到Subversion配置文件(/etc/subversion/config~/.subversion/config),并merge-tool-cmd使用您喜欢的工具设置变量:

### Set merge-tool-cmd to the command used to invoke your external
### merging tool of choice. Subversion will pass 4 arguments to
### the specified command: base theirs mine merged
# merge-tool-cmd = merge_command
Run Code Online (Sandbox Code Playgroud)

虽然kdiff3存在一个问题,它不支持四个普通参数(SVN将四个普通参数传递给kdiff3,但它不起作用),所以通常用一个简单的脚本调用它来翻译参数,例如"kdiff3caller":

#!/bin/sh
kdiff3 "$1" "$2" "$3" -o "$4"
Run Code Online (Sandbox Code Playgroud)

这里解释这个kdiff3问题和解决方案.

  • 对我来说它启动kdiff3确定,但它似乎不起作用.我做了一个svn合并,当发生冲突时我会"启动(l)"并打开kdiff3但是合并似乎不起作用.它保存到.svn/tmp但是svn merge命令只是重复一遍,再次询问我该怎么做.编辑:好的,我的坏.我确实工作,但你需要先做(l)启动,进行合并,然后选择(r)解决. (2认同)