好好爱自己!

【转】svn diff输出结果的格式

 

原文: https://blog.csdn.net/zgmzyr/article/details/6144430

-------------

$ svn diff -r 2:3 rules.txt
(1)Index: rules.txt
(2)===================================================================
(3)--- rules.txt (revision 2)
(4)+++ rules.txt (revision 3)
(5)@@ -1,4 +1,4 @@
(6)Be kind to others
(7)-Freedom = Chocolate Ice Cream
(8)+Freedom = Responsibility
(9)Everything in moderation
(10)Chew with your mouth open

第一行,显示文件
第二行,分隔符
第三行,老版本用“-”表示
第四行,新版本用“+”表示
第五行,老版本显示1~4行,新版本显示1~4行   /// 1,4 : 1表示从第1行开始显示,4表示显示4行
第六行,两个版本都有
第七行,只有老版本有
第八行,只有新版本有
第九行,两个版本都有
第十行,两个版本都有
==================
 
 
unified diff format统一差异格式
一种标准的文件比较格式, 不同的行之前标上'+'或者'-'表示不同的文件, 新文件用'+'表示, 旧文件用'-'表示
@@表示不同出现在哪一行



diff -u 可以产生这种格式的补丁文件,它与diff -c命令产生的context diff不一样,后者更适合于大量修改的源代码之间的补丁.
前者的好处在于便于人阅读,而且可以直接patch


如何用svn diff来建立一个补丁文件,基本的命令是
$svn diff –revision PREV;COMMITTED foo.c
PREV是你前一个版本的版本号
COMMITTED是你想提交的版本号

$svn diff –revision HEAD
显示本地工作文件与服务器上的版本的差异


svn diff foo.c                  比较本地修改
svn diff --r 3 foo.c      比较工作拷贝和版本库
svn diff --r 2:3 foo.c   比较版本库与版本库
svn revert                         删除你的本地修改,恢复到修改前的状态.
 
--------------
 

Horsdy123:第五行,老版本显示1~4行,新版本显示1~4行 这句话说的不对,(5)@@ -1,4 +1,4 @@ ---表示老版本,+++表示新版本,@@(老版本)起始行,行数 (新版本)起始行,行数 应改为,老版本从第1行开始显示,共显示4行,即显示1~3行; 新版本一样。 写公开的技术博客要严谨,不然很容易误导人!!!7 年前回复

 

posted @ 2021-05-19 13:29  立志做一个好的程序员  阅读(342)  评论(0编辑  收藏  举报

不断学习创作,与自己快乐相处