InfoQ

新闻

文章:多个敏捷团队之间的版本控制

作者 Deborah Hartmann译者 郑柯 发布于 2008年5月12日 上午2时14分

社区
Agile
主题
工件和工具,
敏捷技术,
配置管理
标签
自动化操作,
最佳实践,
发布,
持续集成

没有严格的版本控制实践,任何团队所实施的敏捷都会处于风险之中;缺少了好的版本控制这个安全网,要想做到自由地重构、安全地试验或者快速从错误中恢复, 都是不可能的。许多敏捷支持者将版本控制视为核心实践——不只是敏捷,对于通常的软件开发工作来说也是如此。新团队或者没有稳定的版本控制方案的团队,都 可以从本文中得到帮助。Henrik Kniberg在InfoQ上发布的迷你书《Scrum and XP from the Trenches》大受欢迎,对于众多阅读过本书的人来说,他清晰的解释并不陌生。现在他将书中用到的版本控制模式及具体细节都分享了出来,详细可见《多个敏捷团队之间的版本控制》一文。

Henrik的方法是以完整模式的方式描述的,而且所有的元素和细节都得到了详细的叙述。对于“完成”一词含义的清晰理解,是本文的重点,而且他认为这必须包括回归测试。模式包括:

  • 分支所有者&方针
  • “完成”概念
  • “完成”分支
  • 何时创建额外分支?
  • 工作分支
  • 从工作分支公开发布至主干
  • 如果团队同时在实现多个故事该怎么办?
  • 完成包括回归测试在内的工作
  • 分叉代码(合并冲突)
  • 多个团队——如果其他团队同时向主干中发布代码该怎么办?
  • 发布分支

Henrik还进一步包括了一些该模型的变种、FAQ和参考资源列表。本文虽然篇幅很长,但易于理解。

上图选自本文中的工作清单。图示对于Henrik的方案描述起到了重要作用。本文所在页面可以打印,而且其中还提供了一个单独的、可以打印的pdf文档。文中还包括可供打印的单页总结pdf文件(工作清单),开发者打印出来后,可以将其贴在自己的工作用电脑上。

阅读全文:《多个敏捷团队之间的版本控制

1 条回复

回复

受益非浅 发表人 Ford Guo 发表于 2008年5月12日 上午8时37分
  1. 返回顶部

    受益非浅

    2008年5月12日 上午8时37分 发表人 Ford Guo

    如果是分布式的SCM是不是也很不错呢?

独家内容

Tapestry for Nonbelievers

I. Drobiazko和R. Zubairov合作撰写了一篇文章,详细介绍Apache Tapestry 版本5——一个面向组件web框架。文章向读者展示了创建组件方法,并谈到了Tapestry中的IoC以及Ajax的相关特性。

ESB拓扑方案

在本文中,Adrien Louis讨论了两种基于ESB的SOA拓扑方案的优缺点:单个公司级ESB vs. 彼此互联的“部门级”ESB系统。Adrien讨论了每种方案对管理、业务监测、治理、可靠性和编配等问题的影响。

毛新生谈Project Zero和软件新发展

InfoQ中文站有幸与IBM中国开发中心Web 2.0首席架构师毛新生聊了聊Project Zero和软件新发展的相关话题,其中包括Project Zero的组织形式、支持的语言、以及未来发展方向等等。

Google图表及gchartrb初探

Google图表是一项用于生成图表的Web服务。这篇文章详细介绍了Google图表的接口以及可以允许Ruby方便创建图表的gchartrb库。

使用Erlang和Yaws开发REST式的服务

在这篇文章中,Steve Vinoski解释了如何用Erlang和Yaws Web服务器创建REST式Web服务。

Segundo Velasquez与客户眼中的敏捷

在某个软件产品设计的初始阶段,Segundo Velasquez曾以客户的身份与一个敏捷团队共同工作;Deborah Hartmann就这段经历对他进行了采访。

开放平台技术架构剖析

本视频从互联网的分类讲起,介绍了开放平台的类型、开放的价值以及开放平台对开发者的机会和挑战。然后以雅虎的NCP开放平台为例,讲解了NCP的特点、基本架构和具体的开发过程。

用UML做好系统分析

使用UML如何能让我们做好系统分析的工作呢?就让我们通过基金模拟项目,先睹为快,抢先体验一番。 本文节选自《系统分析师UML实务手册》的第二章。