`

集成winmerge作为subversion的diff工具

阅读更多

subversion默认的diff工具比较简单,文本界面,在使用时不是很理想。

    winmerge则是一款非常优秀的diff/merger工具,由于winmerge自带和clearcase的集成功能,因此我在公司工作环境下一直都是使用winmerge替代clearcase自带的diff工具。

    近日使用svn,每次执行svn diff后都对出来的文本比较结果的效果不满意,即使换成TortoiseSVN的diff工具也还是不够好。因此产生想法,能否将winmerger集成到subversion.

    google了一下"winmerge subversion",顺利在国外的一个blog上找到答案,实验了一下,很成功,效果非常好,现在将具体方法共享出来。

    设置之前首先请先安装好subversion和winmerge,之后步骤如下:

    1.建立bat文件
        文件名winmergediff.bat,内容如下:

        start "WinMerge" /B /WAIT "C:\Program Files\WinMerge\WinMergeU.exe" /e /ub /dl %3 /dr %5 %6 %7

        请保证WinMergeU.exe的路径和实际安装路径一致。这个文件放哪里无所谓,方便起见我放到subversion的客户端配置目录中。


    2.修改subversion的客户端配置文件

   
        在windows下,subversion的客户端配置文件存放在当前用户的application data目录下,具体路径取决于操作系统。

        在vista下路径是 C:\Users\**user**\AppData\Roaming\Subversion.
        在windows 2003下路径是c:\Documents and Settings\**user**\Application Data\Subversion.

        打开config文件,找到这行
            # diff-cmd = ********
        打开注释,将内容修改为
            diff-cmd = C:\Users\**user**\AppData\Roaming\Subversion\winmergediff.bat
   

    测试一下,在命令行下执行 svn diff,可以看到winmerge会启动并显示两个不同版本的文件,diff的效果可不是svn那个文本界面能比的。


    顺便去官网看了一下,发现现在使用的winmerge的版本比较旧了,下了一个新版本测试了一下,在安装时发现有两个选项,分别是和clearcase/TortoiseSVN集成,对于TortoiseSVN用户就非常的方便了。如果使用绿色版本的winmerge,可以自行手工设置,在settings->external programs->diff viewer中设置:"D:\Program Files\WinMerge\WinMergeU.exe -e -x -ub -dl %bname -dr %yname %base %mine"。


    对于其他的版本控制工具,winmerge提供了相应的集成方法,详细请看官网文档
    Version control integration
    http://winmerge.org/docs/manual/VersionControl.html

    饮水思源,贴出来找到的blog地址,作者还试过集成windiff,使用类似工具的朋友可以参考他的方法。
    http://flimflan.com/blog/UsingWinMergeWithSubversion.aspx

    值得注意的是有个回帖,提到一个改进,"single-instance behavior",不清楚这个特性的作用,有兴趣的朋友可以研究一下:

<!--<br /> <br /> Code highlighting produced by Actipro CodeHighlighter (freeware)<br /> http://www.CodeHighlighter.com/<br /> <br /> -->I have what I think is an improvement -- the latest version of WinMerge allows you to have "single-instance behavior"-- ie. One instance of WinMerge can have several diff sessions (comparisons of pairs of files) open in it.

To use this, just take out the "/WAIT" and add the "/s":

start "WinMerge" /B "C:\Program Files\WinMerge\WinMergeU.exe" /e /s /ub /dl %3 /dr %5 %6 %7



分享到:
评论

相关推荐

    WinMerge文件diff工具

    WinMerge,文件diff工具,可以在windows系统下比较两个文件的区别

    WinMerge文件比较工具

    WinMerge文件比较工具,WinMerge文件比较工具

    WinMerge 文件对比合并工具

    WINMERGE WinMerge 是一款用以对文件进行对比以及合并,可以运行在所有流行的 Windows平台上的开源软件。有些功能需要额外安装组件。 最新的 WinMerge 版本以及其它相关信息可以从 http://winmerge.org 得到。 ...

    代码比对工具-WinMerge

    代码比对工具-WinMerge代码比对工具-WinMerge代码比对工具-WinMerge代码比对工具-WinMerge代码比对工具-WinMerge代码比对工具-WinMerge

    WinMerge-2.13.1文件对比工具

    WinMerge-2.13.1文件对比工具WinMerge-2.13.1文件对比工具WinMerge-2.13.1文件对比工具

    WinMerge(java代码比较工具)

    WinMerge(java代码比较工具),相当好用,可以用来比较两个java代码的不同的地方,在java开发过程中给你解决寻找两个同名文件不同之处的烦恼!用法简单!

    (winmerge for linux)grimmdp-winmerge-1bd708f4cf72.zip

    WinMerge 3 ========== WinMerge 3 is a port of WinMerge (http://winmerge.org) to use cross-platform with Qt (http://qt.nokia.com/) framework. This project is still in very early stages. WinMerge 3 is...

    文件比较工具WinMerge

    WinMerge-文件比较工具,可比较两个文本文件,将其中不同的部分列出来。可以通过此工具来查询修改的部分。

    winmerge代码比较工具

    类似beyond compare的对比工具,很实用,无需烦人的注册码。

    WinMerge文本比较工具

    WinMerge文本比较工具,比较文本的差异,差异明显,使用方便。

    Merge工具 win Merge

    免费Merge比较工具 win Merge

    WinMerge WinMerge WinMerge

    做项目的时候通常版本与版本比较,因为下一个版本跟前一个版本差一点,可一般我们做多后查不出来,用WinMerge能很简单的查出来增加了哪里........

    Winmerge插件(16进制比较查看插件)(含源码)

    Winmerge 16进制比较查看插件 识别格式: .exe .dll .bin .ocx 编译环境:VC++ 6.00, XP系统。 在WinMerge 2.12.0.0 版本上稳定使用。 安装: 将dll文件复制到"x:\WinMerge安装目录\WinMerge\MergePlugins内,...

    程序对比工具 winmerge下载

    程序对比工具 winmerge下载

    WinMerge文件比较/合并工具

    WinMerge是一款运行于Windows系统下的免费开源的文件比较/合并工具,使用它可以非常方便地比较多个文档内容甚至是文件夹与文件夹之间的文件差异。适合程序员或者经常需要撰写文稿的朋友使用。 当您有两个以上的内容...

    winmerge文件比较工具

    文件比较,很好地把两个文件不同部分清楚地表示出来. 不同部分还可以CSV,HTML等格式输出.

    winmerge-2.16.4-x64-exe.zip

    与beyondcompare工具差不多的使用方式,winmerge是开源免费版。当您有两个以上的内容相似的文字文件时,WinMerge就可以立刻派上用场,帮您检查两个文件里头不同之处。如您有写过程序就会了解,当您在改版时,在新的...

    WinMerge文件比较工具 绿色版

    WinMerge文件比较工具 超好用 绿色版

    WinMerge阅读源码改动工具

    一款很好的阅读源码改动的工具,可以对比阅读文件或文件夹得改动

Global site tag (gtag.js) - Google Analytics