我已经搜索了一段时间,仍然找不到一个简单的解决方案来解决我的问题。我想在两个文件版本之间产生差异,但是我希望输出显示文件的所有行。
顺便说一句,我正在使用svn 1.6.17,操作系统是AIX 5.3。
示例:比较我的文件“test_file”的第21个版本和第22个版本之间的差异。
% svn cat -r21 test_file
My Test File
line 1
line 2
line 3
line 4
line 5
line 6
line 7
line 8
line 9
% svn cat -r22 test_file
My Test File
line 1
line 2
line 3
line 4
line 5
line 6
line 7
line 8
line 9
added after 1
added after 2
added after 3
% svn diff -r21:22 test_file
Index: test_file
===================================================================
--- test_file (revision 21)
+++ test_file (revision 22)
@@ -9,3 +9,7 @@
line 7
line 8
line 9
+
+added after 1
+added after 2
+added after 3
现在这个输出显示了两个版本之间的差异,但并不是所有行都在那里,它只显示前3行。所以我的问题是如何在输出中得到这些行?是否有一些svn diff配置设置?我知道我可以使用外部diff工具来针对svn,但哪一个工具可以给出我想要的输出呢?因为我在一个公司网络中,所以我想尽量避免安装任何diff工具。
另外一点:到目前为止,“sdiff”生成的带有2列的文件似乎是最接近我的答案,但我更想要一个单列的文件,用“+”和“-”表示添加/删除的行。
提前感谢任何帮助! =)