diff patch用法

来源:互联网 发布:网络目标人群分析 编辑:程序博客网 时间:2024/05/15 16:41

diff和patch是linux下常用的命令,diff用来把两个文件的差异形成一个文件,而patchdiff输出的文件作为输入,可以实现版本的升级(打补丁)。下面简单介绍diff和patch的用法。

丁。

一、单个文件


diff -uN  from_file(源文件)  to_file(目的文件) >to_file.patch

patch -p0 <to_file.patch

patch -RE -p0< to_file.patch


二、多个文件


diff -uNr  from_docu(源文件夹)  to_docu(目的文件夹) >to_docu.patch

cd dir(dirfrom_docu的路径,进入from_docu目录)

patch -p1 <to_docu.patch

patch -R -p1<to_docu.patch

 

-r 是一个递归选项,设置了这个选项,diff会将两个不同版本源代码目录中的所有对应文件全部都进行一次比较,包括子目录文件。

-N 选项确保补丁文件将正确地处理已经创建或删除文件的情况。

-u 选项以统一格式创建补丁文件,这种格式比缺省格式更紧凑些。

-R可以去除补丁,恢复旧版本

-p0 选项要从当前目录查找目的文件(夹)

-p1 选项要忽略掉第一层目录,从当前目录开始查找

(-p<剥离层级>或--strip=<剥离层级> 设置欲剥离几层路径名称,即patch文件首行指明了路径,根据当前所在目录,略去patch文件的前几级目录)


0 0