0

我有一个包含数千个文件的目录和 2 个适用于同一目录的补丁文件。每个补丁文件修补 dir 或其子目录中的 20-30 个文件。

如果我将任一补丁应用于共同的祖先目录,它就会成功。

但是如果我应用一个补丁文件然后另一个,它会失败,因为在应用一个补丁文件后行号已经改变。(两个补丁文件都存储来自共同祖先的差异)。在某些地方也存在冲突,我想使用一些图形工具(如 meld)进行 3 路合并。

我的目标是从补丁文件中进行 3 路合并,然后将这个最终目录递归地与共同祖先进行比较,以创建一个补丁文件。

一种方法是创建 2 个共同祖先的副本,将不同的补丁应用于 2 个副本,然后使用 meld 进行合并。meld 会花费大量时间比较未更改的文件(dir 有数千个文件)。有没有更好的方法来做到这一点?

如果您输入确切的命令,我将不胜感激,因为我是 linux 新手。

4

1 回答 1

0

后者似乎是一个不错的选择:合并 2 个打补丁的文件树。除非您可以通过在合并之前删除未更改的文件来优化流程,从而在每个修补文件树中留下文件集的联合。但是,只有经常需要这样做时才有意义。

于 2010-06-24T17:58:28.880 回答