例如,我有两个目录,分别是 old 和 new 。目录 old 具有子目录 abc ,目录 new 具有子目录 cde 。 我尝试使用
创建补丁diff -ru old/ new/ > file.patch
我在file.patch中获得了以下输出:
Only in old/: abc
Only in new/: cde
当我尝试修补文件时出现以下错误:
patch: **** Only garbage was found in the patch input.
当我尝试使用以下方法创建补丁时:
diff -ruN old/ new/ > file.patch
我得到空文件。补丁。
有没有办法创建一个修补程序,当修补旧版本时会删除 abc 并在旧版本中创建 cde ?
答案 0 :(得分:1)
makepatch脚本对此非常有用。我将它用于几乎所有的源补丁,以及diffstat。还有applypatch(完成任务),但我自己不使用它。
GNU diff新文件“-N”选项(用于不...)使用递归选项“-r”。所以你可以使用
diff -r -N old new
我刚刚确认它适用于diff 3.0(现在已经很老了)。