Leadge.com首页 > 知识库
文章搜索
多个敏捷团队之间的版本控制
2009-2-17 10:38:55  作者:Henrik Kniberg
  如果团队同时在实现多个故事该怎么办?

    如果团队每次实现一个故事,将代码发布到主干中并不算什么大不了的事情。只要这个故事相关的代码在工作分支上完成实现并通过测试,我们把所有的相关内容从工作分支上复制到主干上就可以了。搞定!

    先等一下。如果团队中同时开发多个故事呢?如果“开户”故事完成了,而“存款”还在进行中呢?

 


    如果我们在这个点上向主干进行同步,就会将尚未完成的“存款”故事同步进去,这时它还不能发布呢!而且违反了主干的版本控制方针!

    当然,我们可以等到“存款”故事完成。

    (等待……)

    好了,现在“存款”故事完成了!太棒了!等一下……现在有人开始开发“取款”用户故事了!没错!同样的问题又发生了!




    如果 “存款”故事的一个测试失败了,就很难知道是因为“存款”故事相关代码造成的,还是由于检入同一分支中并且部分完成的“取款”故事相关代码的原因。

    等待无法起到任何帮助作用。这样实际上是在滚雪球,期望在未来某个假设的时间点上所有的故事都可以完成(如果这样的情况真的能够发生的话),而且可以进行一次大规模的发布。

    上述是一个非常普遍的问题。我们该怎么做呢?

    下面是一些应对之策:

不要做过多的并行开发。要力图将团队的注意力每次都只放在一个故事之上。
如果在“开户”完成之前就有人准备开始“存款”相关的工作,要等到“开户”彻底完成之后再检入“存款”相关代码。或者可以将“存款”相关的代码检入到一个临时的分支之中,如果你喜欢操作多个分支的话。
如果在“开户”完成之前就有人准备开始“存款”相关的工作,可以让他先从一些相对安全和不可见的UI元素等部分开始,这些东西的变化不会影响到整个分支的可发布性。比如,“存款”需要开发一些新的代码以及对一些旧有代码的修改,可以先实现新的代码(新的方法、新的类、新的测试等等),而不是先去修改已有代码。如果“存款”需要新的GUI元素,那就让它们先不可见。等到“开户”故事完成而且发布到主干上之后,我们就可以开始实现“存款”的剩余代码了。

此文章共有2页  1 2 下一页

文章来源:中国项目管理资源网

发表评论    【推荐】 【打印
我来评两句 查看最新评论〗 
请您注意:
·遵守中华人民共和国的各项有关法律法规
·承担一切因您的行为而导致的法律责任
·本网留言板管理人员有权删除其管辖留言内容
·您在本网的留言,本网有权在网站内转载或引用
·参与本留言即表明您已经阅读并接受上述条款
昵称: 匿名
 
图片广告
热点文章
论坛精贴