我的上一位雇主开发了一个精心设计的系统,该系统位于 SVN 之上以处理正在进行的开发:(变更管理)查看错误/问题,并在提交时通过标记错误 ID 号和(发布管理)标签将它们与提交相关联SVN 中的项目作为基于错误/问题跟踪系统的特定版本的一部分。第二部分有一个与之相关的工作流程,以从用户/管理层获得签字。然后,到了发布的时间(通常是每个星期四晚上),他们可以运行一个命令来检查所有标记的代码并进行部署。
我的新公司要小得多,我有兴趣找到一个低成本/低维护的等价物,即使它只是意味着直接与 SVN 打交道。特别是,我经常发现在游戏后期提交会破坏我们的构建,并且很难理清我们可以包含的内容。(就管理 SVN 而言,我倾向于使用标签而不是分支的想法,因为它需要更少的深谋远虑,但我很高兴被说服。)
人们使用什么来标记发布的提交并进行后续部署?是否有任何好的开源解决方案来管理发布周期,允许您从 Web 浏览器浏览 SVN 并标记发布的问题/提交?到目前为止我看到的最好的东西是Jira,但它看起来像一个非常大的工具(很难配置/维护吗?)。Apache 基金会为此目的充分利用了 Jira(例如,参见Mahout 路线图)。
更进一步的做法是让这个相同的系统还包括持续集成,以便我们的单元测试可以在每次提交时运行,然后每个错误/问题也将与这些信息相关联。
注意:关于 stackoverflow 有一些稍微相关的问题,但我没有看到任何涉及部署周期和发布管理这方面的内容(请参阅release-management-in-svn、manage-your-project-life-cycle和best -处理变更管理的方式)。