bzr快速入门(3)—- 使用看门人,Gatekeeper

作者:yinwm
版权声明:可以任意转载,转载时请务必以超链接形式标明文章原始出处和作者信息及本版权声明。

有没有遇到过这样的时候,一个手欠,或者没注意,一个还没有完全写好的功能就放到主分支上了,而且还很幸运的打到release里面。好吧,你没那么幸运,但是几个经验不是很丰富的小弟把代码随便传上来,你总得看一下吧。

这个怎么搞呢?难道你跑去每个人的地方看看?看着他们跑测试用例?跟着他们做Code Review?一两个人还行,人多呢?要是人不在你身边呢?比如远程开发?
如果组织结构更大一点呢?开发团队在开发,测试团队在测试,这样很可能一个没有经过充分测试、检查过的代码版本,就被测试团队抓走了,然后可能就是一堆的问题咯。其实有问题还好,要是有问题没检查出来,那就更麻烦了。

所以,利用bzr的这种天然的DVCS的优势,添加了一个叫做Gatekeeper,看门人的概念。这个概念说起来是很简单的,就是所有的代码,该提交提交,该搞啥搞啥,但是呢,不是提交到主开发分支哪里,而是提交到看门人负责的一个分支上,由他来进行统一的测试审查等等。等完事OK了,他(只有他)再提交到主分支上就好了。这样就保证了所有的问题,低质量的代码,都被看门人挡住了。

看门人可以是一个人,也可以是一个团队,只要能够保证产品的质量就可以了。

比如在服务器,代码都是放在
/repo/main
上面的,哪么现在根据main生成一个dev.main的分支,所有的人都是基于dev.main进行开发。
而测试团队则选择main进行测试,这样开发和测试就已经分开了。
然后看门人保证dev.main的质量,当质量达到一定的水平之后,并且代码稳定了,就可以把dev.main merge到main上面了。

Sep 11th, 2008 | Posted in bzr
No comments yet.

Leave a comment

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Powered by WP Hashcash