svn diff与vim整合

0、起因
     大家知道,如果我们直接用svn diff,显示内容不如vimdiff直观,加上最近跟我一起住的同学,也在鼓吹,把svn加到自己的vim,有多方便,因此花了一点点时间,google相关资料,整理如下。

1、svn diff命令替换为vimdiff
     操作步骤如下:
          1、首先在~/bin下创建一个shell脚本,例如名字为svndiff.sh,脚本内容如下:
               #!/bin/sh
               DIFF="vimdiff"
               # svn diff命令会传入diff命令的两个文件的参数
               LEFT=${6}
               RIGHT=${7}
               # 拼成diff命令需要的命令格式
               $DIFF -f $LEFT $RIGHT
          2、然后打开~/.subversion/config文件,在选项[helpers]下,添加如下语句,注意不要有空格:
               diff-cmd=/home/gzzhougang/bin/svndiff.sh
          
       执行完上面步骤后,此时使用svn diff命令(diff的使用方法跟原来完全以前),效果如下:
        
        我在文件中添加一行语句和三行空白行,此时会直接打开一个双窗口的vim,那个地方有修改,一目了然,并且还可以查看修改的上下文。

2、集成svn到vim中
     主要使用了一个vim插件,该插件可以集成cvs和svn到vim中,可以再vim中看log,diff,annotate,commit等等。需要安装cvs和svn的命令行版本。插件下载地址: http://www.vim.org/scripts/script.php?script_id=90。比如你打开某个文件,可以直接vim使用命令:VCSLog查看当前文件的log,使用命令:VCSVimDiff查看当前文件的diff,:VCSRevert恢复文件。其他相关的命令可以查看插件文档,写得非常清楚。

3、参考网址
      http://www.cnblogs.com/tshell/archive/2012/11/04/2753369.html,推荐了一些常用的插件
      http://www.oschina.net/question/234345_56748,介绍了在Linux下设置svn diff。

你可能感兴趣的:(其他,vim,VIM,Vim)