Meld 是一个可视化的文本差异比较工具,它可以跟多个版本控制系统集成,个人认为它是最好用的。

如何让Meld成为你SVN或GIT的默认diff工具呢? 下面我简单的说一下

安装Meld

在Ubuntu下,只需一条简单的命令就可以了

sudo apt-get install meld

让SVN使用Meld作为diff工具

编辑 ~/.subversion目录下的config文件,将meld赋值给diff-cmd,如下所示:

### Set diff-cmd to the absolute path of your 'diff' program.
###   This will override the compile-time default, which is to use
###   Subversion's internal diff implementation.
diff-cmd = meld

此后,使用svn diff命令时,将调用meld工具进行比较。

让GIT使用Meld作为diff工具

首先,设定GIT让它使用Meld

git config --global diff.external meld

然后像往常一样比较某个文件

git diff filename

这时,虽然Meld会被调用,但是系统会报错”Wrong number of arguments(Got 7)”。原因是GIT会送7个参数给Meld,但是Meld只需要两个参数,两个需要比较的文件名。所以不能直接用Meld,必需要做一点小修改:

在自己的目录下建立一个git-meld.sh的script

vim ~/git-meld.sh

加入以下内容:

#!/bin/sh
meld $2 $5

更改文件的权限:

chmod 777 ~/git-meld.sh

然后把external diff改成这个shell script:

git config --global diff.external ~/git-meld.sh

^_^,大功告成。

Logo

开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!

更多推荐