How to get external merge tools to work with svn on linux?

时光怂恿深爱的人放手 提交于 2019-12-23 09:59:27

问题


How do I get a GUI-based merge tool to work with command line SVN in linux? I understand that there are many options like meld, svn Diff, etc. out there. All of them require a helper script to allow svn to invoke the external program during conflict resolution. I followed the instructions given here and the nice svn manual with meld.

But in all cases, when I get to the merge conflict and type 'l' to invoke the external tool, I get an error: The external merge tool exited with exit code 255

I'm fairly certain I'm missing some key thing here. ITs too much of a coincidence for so many different solutions to fail. Would appreciate any solution or pointers to the problem.

Thanks!


回答1:


Also make sure that the path in your config is absolute. It should be the same path you see when you run a pwd command from that directory. No aliases or relative paths. So if your username is foo you would replace this line:

Add this below it: merge-tool-cmd = ~/bin/svn-merge-meld

With

Add this below it: merge-tool-cmd = /Users/foo/bin/svn-merge-meld




回答2:


You may not have the correct permissions on the wrapper script. Try something like this:

sudo chmod +x /usr/local/bin/mergewrap.py

I've found several wrapper scripts for vimdiff or meld which seem to pass the wrong number of arguments. Unless I've misunderstood the rather terse documentation about the commandline parameters, they only take 2 or 3 filenames. This may also cause the script to fail with an error.



来源:https://stackoverflow.com/questions/8312089/how-to-get-external-merge-tools-to-work-with-svn-on-linux

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!