通过diff和patch添加完整的目录

是否有可能通过差异和补丁来添加完整的目录

在标准的代码库上添加额外的模块似乎是非常方便的方法。

我search了一些解决scheme,但他们通常在文件级而不是在目录级。

谢谢。

回答自己:

diff -urPp old_dir / new_dir /> new_module.patch

似乎要做的伎俩。

两个简单的建议 – 这些应该有所帮助

  1. 你需要标志-r | --recursive -r | --recursive

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

就像我在这里所做的一样。

下面的步骤将工作

  1. 在旧的源代码和新的源代码(新文件+新目录)之间进行修补diff -urPp old_src new_src> new.patch
  2. 创建一个临时目录mkdir temp
  3. 将原始的旧源代码目录复制到临时目录cp -r old_src temp
  4. 将补丁文件复制到temp目录下创建的cp new.patch temp
  5. 改变目录cd temp
  6. 应用补丁patch -p0 <new.patch

现在所有的修补程序将被应用在临时目录中的文件更改+新文件+目录添加