diff用法
在终端执行以下命令diff -u ArrayTest.java ArrayTest.java.backup
-u 选项可以在diff结果中显示上下文信息。
--- ArrayTest.java Tue Mar 11 16:01:12 2014 +++ ArrayTest.java.backup Tue Apr 22 15:37:37 2014 @@ -5,10 +5,10 @@ public class ArrayTest { public static void main(String[] args) { + // List list = Arrays.asList(1, 3, 5, 7, 9); for (int i : list) { System.out.println(i); - list.remove(i); } }第1,2两行是我们比较的两个文件以及他们的时间戳,并且分别用 ---和 +++来表示两个文件。
@@ -5,10 +5,10 @@是对下面比较结果的一个总结,
- -5,10表示比较内容对应于ArrayTest.java的第5行开始之后的10行。
- <span">+5,10表示比较内容对应于ArrayTest.java.backup的第5行开始之后的10行。
- 空格两个文件一致
- +只有+++代表的文件中有
- -只有---代表的文件中有
patch用法
diff -u ArrayTest.java ArrayTest.java.backup < diff.txt意思可以等同于 ArrayTest.java - ArrayTest.java.backup = diff.txt
如果执行 cp ArrayTest.java ArrayTest.java.backup之后,可以通过以下命令恢复
patch ArrayTest.java.backup < diff.txt <=> ArrayTest.java - diff.txt
反之可以通过 patch -R ArrayTest.java < diff.txt <=> ArrayTest.java.backup + diff.txt