当前位置:  开发笔记 > 开发工具 > 正文

使用diff的输出来创建补丁

如何解决《使用diff的输出来创建补丁》经验,为你挑选了2个好方法。

我有类似的东西

src/sim/simulate.cc
41d40
< #include "mem/mem-interface.h"
90,91d88
<             dram_print_stats_common(curTick/500);
<
src/mem/physical.hh
52d51
<   public:
55,56d53
<       public:
<
58a56,57
>       public:
>
61,62c60,61
<         virtual bool recvTiming(PacketPtr pkt); //baoyg
<
---

我相信这是使用源树中的diff命令创建的.我想要的是使用该输出创建补丁,并将相同的更改应用于我的源树.



1> Powerlord..:

我相信它diff -u oldfile newfile > a.patch用于创建补丁文件,虽然也可能会抛出其他一些切换(-N?).

编辑:好的,4年后,最后解释开关的含义:

-u创建一个统一差异.统一差异是补丁程序期望作为输入获得的那种差异.您还可以在u(最小3,默认3)之后指定一个数字,以增加输出的行数.这是因为3行不够独特,无法精确定位程序中的一个点.

-N 将缺席文件视为空,这意味着如果其中一个文件为空(或参见下一点),它将产生大量额外内容.

此外,newfileoldfile既可以是目录,而不是单个文件.你可能希望这个-r参数能够递归到任何子目录.



2> Andrei Taran..:

如果你想获得与SVN diff相同的补丁输出,给定两个不同的文件:

diff -Naur file1.cpp file2.cpp

推荐阅读
k78283381
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有