diff patch用的不多,可总忘记参数,备忘一下

diff
diff可以比较两个文件或文件夹,并记录下二者的区别。
常见选项为:
diff [选项] {修改完成的文件/文件夹} {修改前的文件/文件夹}
-r
递归。设置后diff会将两个不同版本源代码目录中的所有对应文件全部都进行一次比较,包括子目录文件。
-N
选项确保补丁文件将正确地处理已经创建或删除文件的情况。
-u
输出每个修改前后的3行,也可以用-u5等指定输出更多上下文。
-E, -b, -w, -B, --strip-trailing-cr
忽略各种空白,可参见文档,按需选用


patch
是将diff记录的补丁应用到修改前的文件/文件夹上。
常见的用法为:
patch -pNUM <patchfile>
-p Num
忽略补丁文件中记录的文件夹层数
-E
选项说明如果发现了空文件,那么就删除它
-R
取消打过的补丁

常用流程


# 产生补丁
diff -uN 修改完成的文件 修改前的文件 > patch文件.patch
(文件夹,增加-r的选项)
# 打补丁(修改前的文件名于patch文件中记录的不一致时需指定文件名)
patch -p0 < patch文件.patch
 # 取消补丁(同上)
patch -RE -p0 < patch文件.patch

你可能感兴趣的:(diff patch用的不多,可总忘记参数,备忘一下)