菜鸟笔记
提升您的技术认知

使用svn diff的-r参数的来比较任意两个版本的差异

1 svn diff的用法
1.1 对比当前本地的工作拷贝文件(working copy)和缓存在.svn下的版本库文件的区别
svn diff
1.2 对比当前本地的工作拷贝文件(working copy)和任意版本A的差异
svn diff -rA
比如,以下将对比本地的工作拷贝文件(working copy)和版本94239的差异
svn diff -r94239 
1.3 对比任意历史版本A和任意历史版本B的差异
svn diff -rA:B
比如,以下命令将显示版本94127相对于版本94239的差异,
[@user]$ svn diff -r94239:94127
显示差异后的结果如下,
===================================================================
--- RealServer/LogicWorker.cpp     (revision 94239)
+++ RealServer/LogicWorker.cpp     (revision 94127)
@@ -964,22 +964,8 @@
.......
其中r后面的参数的含义是版本号,具体可以在svn log中查询到。

2 svn log的用法
1.1在任意位置使用
svn log ur1
1.2 进入代码在本地的目录后使用
svn log

3 svn merge的用法
svn merge -rA:B
比如,下面这个命令的含义是,把94127版本相对于94239版本的差异merge到当前版本,注意冒号前后的版本的顺序是会带来区别的。
svn merge -r94239:94127
merge完成之后,记得提交本地的修改到版本库,
svn ci -m"restore to version 94127"