我需要一种自动化的方式来向配置文件中添加一行。我曾经diff
创建一个我想要应用的 .diff 文件patch
。但是,我需要修补的文件可能会在其他地方稍作修改。例如,在配置文件的其他地方添加了一些其他行。
我认为这patch
实际上会很聪明,并确定补丁是否仍然可以在没有冲突的情况下应用,但是每当我尝试将补丁应用到与原始文件略有不同的配置文件时,我都会收到错误消息。
我需要传递任何其他标志patch
或diff
使其不那么严格吗?我正在使用生成 .diff 文件
diff -ruN oldfile.conf newfile.conf > mypatch.diff
然后使用
patch myconfig.conf mypatch.diff
我想要的是补丁会尝试相当自由地应用补丁,如果它不知道如何,只返回一个警告,而不是一个错误。目前我看到这些错误:
jeroen@jeroen-ubuntu:~/Desktop$ diff -ruN default.conf default_new.conf > mypatch.diff
jeroen@jeroen-ubuntu:~/Desktop$ patch default2.conf mypatch.diff
patching file default2.conf
Hunk #1 FAILED at 28.
1 out of 1 hunk FAILED -- saving rejects to file default2.conf.rej
jeroen@jeroen-ubuntu:~/Desktop$