什么是“持续集成六步法”?<br />“持续集成六步”是根据业界多年实践总结的持续集成工作流程和规范,<br />提高团队协作能力,高效开发软件应用。<br />
持续集成六步的图例说明:<br />构建成功<br />的线上版本<br />其它开发人员的提交<br />取令牌<br />还令牌<br />次级构建阶段<br />6<br />版本库中的<br />开发分支<br />提交构建阶段<br ...
步骤说明<br />步骤1: 必须在持续集成当前状态为绿色(即成功)时,才能检出代码;<br />步骤3: 本地构建的目的是验证本人的修改没有问题;<br />步骤4: 由于在你修改代码时,别人可能会提交代码,所以要与这些线上代码合并;只有当线...
附加说明<br />令牌<br />可选项,当项目成员较多,构建常因多人提交导致失败时使用;<br />每个分支对应的持续集成只有一个令牌;<br />在第二次检出代码前取得令牌,在线上构建成功后归还令牌。<br />没有拿到令牌的人不允许提交...
附加说明<br />提交阶段构建<br />内部与本地构建相同。<br />提交代码后立即触发提交阶段构建。<br />提交阶段构建成功后,立即触发次级构建。<br />
附加说明<br />次级构建阶段<br />两个前提条件:<br />当提交构建和本地构建时间过长(比如超过10分钟);<br />且无法进一步优化,使构建时间缩短;<br />次级构建的内容包括剩余的自动化测试;<br />如果次级构建时间过...
Upcoming SlideShare
Loading in …5
×

持续集成中的六步提交

4,590 views

Published on

0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
4,590
On SlideShare
0
From Embeds
0
Number of Embeds
1,703
Actions
Shares
0
Downloads
46
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

持续集成中的六步提交

  1. 1. 什么是“持续集成六步法”?<br />“持续集成六步”是根据业界多年实践总结的持续集成工作流程和规范,<br />提高团队协作能力,高效开发软件应用。<br />
  2. 2. 持续集成六步的图例说明:<br />构建成功<br />的线上版本<br />其它开发人员的提交<br />取令牌<br />还令牌<br />次级构建阶段<br />6<br />版本库中的<br />开发分支<br />提交构建阶段<br />4<br />1<br />5<br />2<br />个人本地<br />工作区<br />4’<br />3<br />第二次本地验证<br />第一次本地验证<br />图例:<br />运行测试<br />代码修改<br />代码流向<br />把代码从版本库中检出到本地;<br />为新功能或修改某个缺陷而修改代码,增加测试;<br />运行第一次本地验证;<br />验证无问题后,再次与版本库中的代码合并,执行本地验证;<br />二次验证无问题后,提交代码到版本库;<br />关注持续集成服务器运行完提交构建,直至其成功。 <br />
  3. 3. 步骤说明<br />步骤1: 必须在持续集成当前状态为绿色(即成功)时,才能检出代码;<br />步骤3: 本地构建的目的是验证本人的修改没有问题;<br />步骤4: 由于在你修改代码时,别人可能会提交代码,所以要与这些线上代码合并;只有当线上持续集成当前状态为绿色时才能迁出代码进行合并。<br />步骤4’: 本次构建的目的是验证合并后的代码没有问题;<br />步骤6:代码提交者要一直关注由自己的提交所触发的持续集成线上构建,直至其成功。如果失败,必须做为最高优先级任务对其进行修复。<br />
  4. 4. 附加说明<br />令牌<br />可选项,当项目成员较多,构建常因多人提交导致失败时使用;<br />每个分支对应的持续集成只有一个令牌;<br />在第二次检出代码前取得令牌,在线上构建成功后归还令牌。<br />没有拿到令牌的人不允许提交代码。<br />本地构建<br />准确地说,应该是“个人构建”。<br />构建内容包括编译、打包、动静态检查、所有单元测试、一些集成测试和系统级冒烟测试。<br />必须在10分钟内完成。<br />
  5. 5. 附加说明<br />提交阶段构建<br />内部与本地构建相同。<br />提交代码后立即触发提交阶段构建。<br />提交阶段构建成功后,立即触发次级构建。<br />
  6. 6. 附加说明<br />次级构建阶段<br />两个前提条件:<br />当提交构建和本地构建时间过长(比如超过10分钟);<br />且无法进一步优化,使构建时间缩短;<br />次级构建的内容包括剩余的自动化测试;<br />如果次级构建时间过长,将其再分成多批运行。<br />如果次级构建中的一些测试频繁失败,应将其移到提交构建中运行,或在提交构建中增加low leveltest增加相关功能的测试。<br />详细说明请参见InfoQ持续集成专栏的系列文章:<br />http://www.infoq.com/cn/news/2011/01/ci-check-in-dance<br />

×