1. 使用vim的比较模式打开两个文件:vim
vim -d file1 file2this
或文档
vimdiff file1 file2get
2. 若是已经打开了文件file1,再打开另外一个文件file2进行比较:it
:vert diffsplit file2date
若是没有用vert命令,diffsplit则会分上下两个窗口。file
3. 若是已经用split方式打开了两个文件file1,file2,又想比较两文件的不一样。im
分别在两个窗口里面输入命令:di
:diffthis文件
4. 若是更改了某个窗口的内容,vim又没有自动更新diff检查,能够使用以下命令更新:
:diffupdate
5. 定位到不一样点:
[c 跳到前一个不一样点
]c 跳到后一个不一样点
6. 在窗口间跳转:
ctrl-w w 跳到下一个窗口
ctrl-w h 跳到左侧窗口
ctrl-w l 跳到右侧窗口
ctrl-w j 跳到下方的窗口
ctrl-w k 跳到上方的窗口
7. 合并文档:
dp 将差别点的当前文档内容应用到另外一文档(diff put)
do 将差别点的另外一文档的内容拷贝到当前文档(diff get)
8. 上下文的展开和查看
比较和合并文件的时候常常须要结合上下文来肯定最终要采起的操做。Vimdiff 缺省是会把不一样之处上下各 6 行的文本都显示出来以供参考。其余的相同的文本行被自动折叠。若是但愿修改缺省的上下文行数为3行,能够这样设置:
:set diffopt=context:3
能够用简单的折叠命令来临时展开被折叠的相同的文本行:
zo (folding open, z这个字母看上去比较像折叠的纸)
而后能够用下列命令来从新折叠:
zc (folding close)