我有三个PHP文件:
操作系统软件(vanilla)
我想使用diff/修补程序(或类似的)创建一个补丁文件,将我对1.0版所做的修改与1.1版中的上游更改合并起来。实现这一目标的最佳途径是什么?
非常感谢。
发布于 2010-12-10 18:38:04
用这个:
$ diff -u 1.php 1a.php > customizations.patch
这将使您统一区分您的香草和定制版本1.0版本的文件之间的所有更改。
您可以尝试将这些更改应用于新文件2.php,如下所示:
$ patch -p0 2.php customizations.patch
但是,请注意,如果源代码变化过大,这可能会导致很多被拒绝的块失败。不过,仅仅获得统一的差异可能是有用的,因为您可以手动地重新组合您的自定义以适应新的源代码。
如果可能的话,我要做的是获取免费软件项目使用的版本控制存储库的本地副本。然后,创建一个分支并集成您的自定义,然后看看是否可以通过将从那时起的上游提交合并到您的分支来向前推进。没有看到所涉及的所有内容,我既不能告诉您这将是一个琐碎或复杂的过程,但它可能比仅仅使用diff和修补程序更容易。
注意到,这将不适用于多个文件;如果将来需要对多个文件执行此操作,则需要在两个不同的目录树中对两组不同的文件(具有相同的文件名)使用diff。我想现在提这件事也许不是个坏主意,以防你将来遇到这样的情况。
https://stackoverflow.com/questions/4412055
复制相似问题