概念:
一种实践以版本控制,自动化构建,团队意识为条件。团队频繁的,小步的,增量的提交可运行,可测试的代码到master,并且将修复破坏应用的提交作为最高优先级。
提交步骤:
- 构建中则等待,构建失败则和他人一起修复后再提交自己的代码
- 别人的构建成功后先将本地代码更新(rebase)
- 确保要提交的代码在本地通过了测试
- 本地验证代码正确则提交
- 等待构建的结果
- 失败则修复后重复步骤3
- 成功则开始下一件工作
条件:
频繁的提交代码
自动化的测试
较短的构建与测试过程
管理依赖配置等
好的实践:
- 构建失败后不提交新的代码
- 提交前在本地运行所有的提交测试
- 等提交测试通过后再继续工作
- 回家前构建必须成功(可以选择修复或者回滚)
- 时刻准备着回滚到前一个版本,但是要规定修复时间
- 不要注释掉失败测试的代码
- 为自己的问题负责
- TDD