通过差异和扩展添加完整目录补丁

时间:2010-10-28 18:12:23

标签: linux directory diff patch

是否可以通过diff和patch添加完整目录?

在标准代码库之上添加其他模块似乎非常方便。

我搜索了一些解决方案,但它们通常在文件级别上工作,而不是在目录级别上工作。

感谢。

3 个答案:

答案 0 :(得分:3)

回答自己:

diff -urPp old_dir / new_dir /> new_module.patch

似乎可以做到这一点。

答案 1 :(得分:2)

两个快速建议 - 这些应该有所帮助

  1. 您需要标记-r | --recursive

  2. 您可能还需要--unidirectional-new-file-N | --new-file

  3. 因为我已经完成了你的想法。

答案 2 :(得分:0)

以下步骤将有效

  1. 在旧源代码和新源代码之间修补补丁(新文件+新目录) diff -urPp old_src new_src> new.patch
  2. 创建临时目录 mkdir temp
  3. 将原始旧源代码目录复制到临时目录 cp -r old_src temp
  4. 将补丁文件复制到创建的临时目录 cp new.patch temp
  5. 更改目录 cd temp
  6. 应用补丁 patch -p0< new.patch
  7. 现在所有补丁都将应用文件更改+新文件+临时目录中的目录添加