使用源代码控制时的常见场景是拥有开发分支和版本化发布分支。我们使用 CVS,以 HEAD 作为开发分支,并命名一个分支,例如: release-6-2 表示产品的当前版本。
新功能的开发仅进入开发分支,但错误修复有时必须同时检查到开发分支和当前发布分支。有时这会变得非常乏味,所以我正在寻找实用的方法来实现这一点。
当要提交的文件在两个分支上同步时,我特别寻找快速“提交到这些分支”的解决方案。
(我们使用 CVS 作为我们的源代码控制系统,因此任何特定于 CVS 的答案都很好。但是,看看其他源代码控制系统是否可以提供更好的方法也很有趣。
在客户端我们使用Eclipse,所以Eclipse解决方案很好。但如果您有非 Eclipse 解决方案,那也没关系。)
将您的修复应用到所需的最旧的版本分支。然后将更改合并到下一个发布分支,依此类推,直到从最后一个发布分支合并到 HEAD。
假设您产品的最旧版本是 1.0,并且您还有 1.1 和 1.5 版本。下一版本的新功能将添加到 HEAD 中。如果在 1.0 中发现错误,则将修复应用到 1.0 分支。从 1.0 分支合并到 1.1 分支。从1.1合并到1.5分支,最后从1.5分支合并到HEAD。
从一个分支合并到另一个分支比手动将修复应用到每个分支更好。
使用 CVS,您必须手动跟踪合并的版本,以便在下次合并时不会包含相同的修订版本。
如果您更改为使用 Subversion,则分支之间的合并会更容易。 Eclipse 的 subversion 工具将跟踪您之前合并的修订版本,从而大大简化了在两个分支之间进行重复合并的任务。
从 CVS 更改为 Subversion 很容易。你不会是第一个采取这种行动的人。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)