利用 Rational Team Concert 在敏捷开发中进行持续集成
2010-04-19 00:00:00 来源:WEB开发网 闂傚倸鍊搁崐鎼佸磹閹间礁纾归柟闂寸绾惧綊鏌熼梻瀵割槮缁炬儳缍婇弻鐔兼⒒鐎靛壊妲紒鐐劤缂嶅﹪寮婚悢鍏尖拻閻庨潧澹婂Σ顔剧磼閹冣挃闁硅櫕鎹囬垾鏃堝礃椤忎礁浜鹃柨婵嗙凹缁ㄧ粯銇勯幒瀣仾闁靛洤瀚伴獮鍥敍濮f寧鎹囬弻鐔哥瑹閸喖顬堝銈庡亝缁挸鐣烽崡鐐嶆棃鍩€椤掑嫮宓佸┑鐘插绾句粙鏌涚仦鎹愬闁逞屽墰閹虫捇锝炲┑瀣╅柍杞拌兌閻ゅ懐绱撴担鍓插剱妞ゆ垶鐟╁畷銉р偓锝庡枟閻撴洘銇勯幇闈涗簼缂佽埖姘ㄧ槐鎾诲礃閳哄倻顦板┑顔硷工椤嘲鐣烽幒鎴旀瀻闁规惌鍘借ⅵ濠电姷鏁告慨顓㈠磻閹剧粯鈷戞い鎺嗗亾缂佸鏁婚獮鍡涙倷閸濆嫮顔愬┑鐑囩秵閸撴瑦淇婇懖鈺冪<闁归偊鍙庡▓婊堟煛鐏炵硶鍋撻幇浣告倯闁硅偐琛ラ埀顒冨皺閺佹牕鈹戦悙鏉戠仸闁圭ǹ鎽滅划鏃堟偨缁嬭锕傛煕閺囥劌鐏犻柛鎰ㄥ亾婵$偑鍊栭崝锕€顭块埀顒佺箾瀹€濠侀偗婵﹨娅g槐鎺懳熺拠鑼舵暱闂備胶枪濞寸兘寮拠宸殨濠电姵纰嶉弲鎻掝熆鐠虹尨宸ョ€规挸妫濆铏圭磼濡搫顫嶇紓浣风劍閹稿啿鐣烽幋锕€绠婚悹鍥у级瀹撳秴顪冮妶鍡樺鞍缂佸鍨剁粋宥夋倷椤掍礁寮垮┑鈽嗗灣閸樠勭妤e啯鍊垫慨妯煎亾鐎氾拷

整个过程是一个项目的持续集成过程,开发人员可以自动快速的得到最新代码的构建,并且进行检查和测试,以便最快的得到用户的反馈。每天的改动都可以通过快速构建和自动单元测试来保证完整性和基本正确性,尽可能地开发人员在构建和设计变更上的精力。
第一部分:源代码管理和版本控制
源代码管理和版本控制是持续集成的基础。在新项目的起始阶段,项目组首先需要对 stream,workspace 和 component 进行规划,并在开发过程中进行持续的代码版本管理。
Component 是项目源代码存储的基础对象。任何一个项目都可以建立一个或多个 component,并允许随着项目的演进而不断完善。但在实际应用中,我们不建议频繁的进行 component 再划分,这需要所有项目组成员进行工作空间的重新加载和代码整合。因此,合理的 component 划分在项目初期十分重要。以下几点经验供大家参考:尽可能降低 component 间的依赖;预先考虑代码组织结构的可扩展性;集中管理公共代码,避免重复。此外,依据功能独立的 Eclipse 工程来划分 component 也是很好的借鉴,这种方法与实际开发相结合,有益于提高开发效率。
Stream 是一个或多个 component 的存储对象,主要用于工作空间内的工作整合。他类似于其他源码管理系统中的分支概念,一个 Stream 仅存储 component 的一个版本,Team 成员通过 stream 来共享代码的变更并进行统一的版本控制。因此建议一个相对独立的 scrum 项目组创建一个单独的 stream,有益于降低组间依赖,并降低代码管理控制的复杂性。当然,项目组内还可以使用多个 Stream 来进行软件的多版本管理。注意:RTC 对于 Stream 下的 component 删除没有用户权限管理,因此,项目组成员切忌随意操作,在项目组中建议指定一名系统管理员进行此类维护操作。
更多精彩
赞助商链接