没有严格的版本控制实践,任何团队所实施的敏捷都会处于风险之中;缺少了好的版本控制这个安全网,要想做到自由地重构、安全地试验或者快速从错误中恢复, 都是不可能的。许多敏捷支持者将版本控制视为核心实践——不只是敏捷,对于通常的软件开发工作来说也是如此。新团队或者没有稳定的版本控制方案的团队,都 可以从本文中得到帮助。Henrik Kniberg 在 InfoQ 上发布的迷你书《Scrum and XP from the Trenches》大受欢迎,对于众多阅读过本书的人来说,他清晰的解释并不陌生。现在他将书中用到的版本控制模式及具体细节都分享了出来,详细可见《多个敏捷团队之间的版本控制》一文。
Henrik 的方法是以完整模式的方式描述的,而且所有的元素和细节都得到了详细的叙述。对于“完成”一词含义的清晰理解,是本文的重点,而且他认为这必须包括回归测试。模式包括:
- 分支所有者 & 方针
- “完成”概念
- “完成”分支
- 何时创建额外分支?
- 工作分支
- 从工作分支公开发布至主干
- 如果团队同时在实现多个故事该怎么办?
- 完成包括回归测试在内的工作
- 分叉代码(合并冲突)
- 多个团队——如果其他团队同时向主干中发布代码该怎么办?
- 发布分支
Henrik 还进一步包括了一些该模型的变种、FAQ 和参考资源列表。本文虽然篇幅很长,但易于理解。
上图选自本文中的工作清单。图示对于 Henrik 的方案描述起到了重要作用。本文所在页面可以打印,而且其中还提供了一个单独的、可以打印的 pdf 文档。文中还包括可供打印的单页总结 pdf 文件(工作清单),开发者打印出来后,可以将其贴在自己的工作用电脑上。
阅读全文:《多个敏捷团队之间的版本控制》
评论