43 准备好后再共享代码
1. 问题是什么
有没有比不使用版本控制系统更坏的事情呢?那就是错误的使用版本管理系统。比如:代码提交频率这种问题,都会影响到生产力,产品稳定性、产品质量和开发日程。
2. 恶魔的方案
别管是不是达到代码签入的要求,要尽可能频繁的提交代码,特别是要下班的时候。
- 提交仍在开发的代码
3. 天使的方案
准备好后再共享代码。
绝不要提交尚未完成的代码。故意签入编译未通过或是没有通过单元测试的代码,对项目来说,应被视作玩忽职守的犯罪行为。
- 立即提交
- 每周,或者每月提交一次
通常情况下,提交的文件应该与一个特定的任务或是一个bug的解决相关。而且应该是同时提交相关的文件,并注有日志信息,将来知道修改了什么地方,以及为什么要做修改。一旦需要对变更采取回滚操作,这种‘原子’提交也是有帮助的。
*要保证再提交代码之前,**所有的单元测试都是通过的。*使用持续集成是保证源代码控制系统中代码没有问题的一种方式。
4. 切身感受
感觉好像整个团队就在源代码控制系统的另一端盯着你。要知道一旦提交代码,别人就可以访问你了。
5. 平衡的艺术
- 分开临时提交,和正式提交
- 代码在提交之前可以进行复查工作
- 仍然应该频繁提交代码
6. 总结
提交代码,一定是完成了一个主题,不论是一个模块,解决了一个问题,都可以。