用到的两个命令是diff和patch。
diff
diff可以比较两个东西,并可同时记录下二者的区别。制作补丁时的一般用法和常见选项为:
diff 【选项】 源文件(夹) 目的文件(夹)
-
-r
- 递归。设置后diff会将两个不同版本源代码目录中的所有对应文件全部都进行一次比较,包括子目录文件。 -N
- 选项确保补丁文件将正确地处理已经创建或删除文件的情况。 -u
- 输出每个修改前后的3行,也可以用-u5等指定输出更多上下文。 -E, -b, -w, -B, --strip-trailing-cr
-
忽略各种空白,可参见文档,按需选用。
diff -puNr libmatroska-0.9.0.orig/make/linux/Makefile libmatroska-0.9.0/make/linux/Makefile >Makefile.patch
则会删除 libmatroska-0.9.0.orig中不同的地方,而加上libmatroska中。