5

如果我们需要发布一个不包括已提交的当前开发或当前版本的任何更改的错误补丁,应该如何使该过程更安全并降低开销?

我们目前在一个主要在 Visual Studio 2008 中开发的小型(3 名开发人员)团队中使用 Subversion 进行源代码控制。我们预计该团队可能在明年将 8 名开发人员分组,并且任何先前版本的支持都会变得更加复杂。虽然大多数客户都在使用当前版本,但有些客户落后了。

4

3 回答 3

6

源代码控制可以很容易地处理这个问题,并且是为此而设计的。

当您达到发布的稳定期时,应该完成一个分支。重要的是,在完成之前不要开始下一个版本的任何工作。

该版本的任何错误修复都应在该分支中完成。这可以防止即将发布的新代码污染错误修复。完成错误修复后,您可以将该更改合并到主干以及任何其他必要的版本。

不要忘记将错误编号放在评论中,因为这将使跟踪提交更容易。

于 2008-10-20T17:37:18.033 回答
3

怎么样:每个主要版本都有一个分支,根据需要将错误修复应用于分支,并应用(或合并)回主干。

于 2008-10-20T17:36:18.720 回答
0

在我工作的地方,我们有几个项目同时进行。为了避免这个问题,我们有几个源代码的变种。例如,第一个版本是 Variant 1.0。我们为此版本创建了一个分支,例如 Variant 2.0,用于所有未来的开发。如果我们需要修复错误,我们会在当前为 1.0 且可以发布的主变体上进行。当 Variant 2.0 准备好投入生产时,我们将它与主分支(在本例中为 1.1)上的任何内容合并,并成为新的主干。在某一时刻,我们有 4 个分支同时运行。

合并代码可能很耗时,并且您必须小心不要在合并期间引入新的错误,但如果您有一个不错的代码比较工具,那么它应该不会太糟糕。不久前,我们使用 Beyond Compare 对 10,000 个文件的源目录进行了合并,只花了一个上午。

于 2008-10-20T17:39:44.627 回答