您的位置:首页 > 运维架构 > Linux

玩转开发板--diff和pitch命令的使用

2018-03-26 17:11 316 查看

diff和pitch命令解析

    diff和patch是一对工具,使用这对工具可以获取更新文件与历史文件的差异,并将更新应用到历史文件上。在数学上说,diff就是对两个集合的差运算,patch就是对两个集合的和运算。在数学上我们知道:A-B = C,这样我们知道A、B、C中任意两个数就可以得出第三个数;因此这两个命令常用来制作补丁。

假设u-boot-2010.09(A)是官方下载解压缩后的源代码,而u-boot-2010.09-fl2440(B)是针对相应硬件(fl2440)做源代码修改后的代码。这时我们可以使用下面diff命令制作一个补丁文件u-boot-2010.09-fl2440.patch(C);
    命令输入:diff -Nuar u-boot-2010.09 u-boot-2010.09-fl2440 > u-boot-2010.09-fl2440.patch
    假设现在有A(u-boot-2010.09)和C(u-boot-2010.09-fl2440.patch)通过patch命令即可得到B(u-boot-2010.09-fl2440);    命令输入:patch -p0 < ../u-boot-2010.09.patch    假设现在有B(u-boot-2010.09-fl2440)和C(u-boot-2010.09-fl2440.patch)通过patch命令即可得到A(u-boot-2010.09);
    命令输入:patch -R -p1 < ../u-boot-2010.09.patch
    注:1.-p0 选项要从当前目录查找目的文件(夹)。
           2.-p1 选项要忽略第一层目录,从当前目录开始查找。
    提示:一般对于官方提供源代码进行修改后的代码,我们一般使用补丁形式保存修改记录。这样我们通过补丁可以知道针对源代码具体进行了哪些修改,另外在分享源代码时也只需要将补丁传给其他人,然后他们从官方下载相应源代码后打上补丁即可。


     
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  linux fl2440