分叉Subversion项目

我从未分手过一个项目,所以我有点难以理解如何继续。 我有一个我自己使用的项目,我作为一个BSD许可项目发布(项目A)。 在工作中,我想使用该代码,但修改特定于我们公司(项目B),但我希望能够继续使用来自我发布的基本代码的功能进行更新。

处理一个项目的两个分支并将项目A的变更合并到项目B中而不覆盖我对项目B所做的修改的最佳方式是什么?


它正在分成两个实体,我在Google Code中主要进行回购,然后在我们自己的内部回购中使用公司版本。 我的问题是保持一切健全,因为它是从发布升级到发布的时间,但保留自定义修改。


请参阅前面提到的讨论“供应商分支”的Subversion手册中的部分。 这将讨论如何处理外部子项目,以便在更新外部项目时合并变更,并在您自己的本地修改中进行合并。

如果您将项目的公共版本(托管在Google代码上)视为公司代码中的外部依赖项,则此方法应该很好。


在Subversion中,“分叉”是“分支”,“合并变更”是“合并”。

如果没有仔细阅读Subversion书中的相关章节,我认为你不会离开。 一旦你投入时间,它写得非常清晰,易于理解。


除非Work愿意将这些修改发回原始项目,否则我会在那里启动一个全新的SVN项目(项目B)。 然后,当您进入BSD许可项目的下一个版本(项目A)时,您可以从上一版本开始更改集,然后将它们应用回项目B.

它可能看起来像多重人格障碍,但根据自己的位置(Word或Home),您必须扮演两个不同的实体。

另一方面,IFF愿意将这些修改发回原始项目,那么最好的选择是创建一个分支,并将项目A的更改合并到Projet B中(定期)。

链接地址: http://www.djcxy.com/p/42143.html

上一篇: Forking Subversion Project

下一篇: Parallel mysql queries in php?