摘要:持续代码提交是实现持续集成的必要条件。
本文分享自华为云社区《云上开发如何实现持续代码提交》,作者:华为云PaaS服务小智。
什么是持续代码提交
持续代码提交就是频繁向主干提交代码,让主干随时保持都是最新的可用状态。持续代码提交是实现持续集成的必要条件。想要做到持续集成,前提是有代码可以集成,通过经常性的提交代码,可以避免大量代码堆积在工程师本地,造成本地的开发分支和团队主干分支差异过大,导致最后无法合并提交。
代码提交的方法
常用的开发模式有主干开发和分支开发两种,当团队成员较多的时候,通常是分支—主干开发模式,为了保障团队的高效协作,团队通常会约定一个规则进行代码提交,下面步骤可供参考。
1 创建开发分支
团队成员在进行代码修改之前,首先创建一个自己的开发分支,然后从主干分支检出最新版本的成功代码到开发分支。
2 本地修改代码
在本地进行代码修改,包括新功能开发、变更实现、缺陷修复等所有会产生代码修改的工作。
3 本地验证
代码修改后,在本地进行编译构建和功能验证。保证修改的代码质量,以及确认修改是否实现了预期的功能。如果功能验证有问题,还需要继续修改代码,然后再验证,直到成功为止。需要注意的是,要控制这个过程的时间,不要过长,一般不超过一天,通常每人每天至少要向主干提交一次代码。这就需要在拆分任务的时候要保证任务的颗粒度不要过大,尽可能小,任务的时间单位通常是小时,最多不要超过8小时,这也和每人每天至少提交一次代码的原则相呼应。
4 合入开发分支
本地确认没有问题后,可以将代码合入开发分支,并触发分支门禁构建,通过之后进行代码审核再合入,确保代码质量达标。需要注意的是,在本地修改代码过程中,主干分支可能会有变化,其他成员会提交代码到主干,所以需要先将开发分支和主干分支进行同步,确保是最新代码,然后再进行合并。
5 开发分支验证
代码合并到开发分之后,对开发分支进行功能验证。
6 合入团队主干分支
在开发分支验证无误后,此时代码可以合入到主干分支,触发主干门禁构建,门禁构建通过之后,再通过代码评审合入到主干,同时进行功能验证。
这样一次代码修改和提交的过程就完成了,这时候可能是修复了缺陷、开发了新功能或者完成了一次变更。在下一次开始工作前还是相同的流程,重复①~⑥这几个过程。
在上面的步骤中,我们可以看到一次代码提交至少有三次编译、两次门禁检查、两次代码审核、三次功能验证,极大的保证了代码的质量和功能的正确性。同时,尽早频繁提交代码,还可以尽早的发现问题,及时修正,避免到了开发后期,修复的成本大大提高,这也是顺应了敏捷的小步快跑,及时反馈的原则。
云上开发实践
我们以华为云 Dev Cloud 为例,来看一下具体操作。通过华为云DevCloud的代码托管、代码检查、流水线服务可以完成持续代码提交操作。
1、云上开发,首先要将代码放置在云上。可以将本地的代码导入到DevCloud中,或者直接在DevCloud创建代码包,然后代码托管服务中创建开发分支,通常是基于master分支。
2、然后是代码修改,可以下载到本地进行修改,或者使用CloudIDE进行云端编程。
3、修改完成后,在本地或者云端进行构建验证,成功后就可以启动开发分支流水线将代码提交到开发分支。
4、流水线执行完成后表示开发分支合并成功,接下来可以申请将代码合入到主干分支。
注意选择正确的分支以及评审人,评审人通常还负责代码评审的工作。
5、合并审批通过后,就可以启动主干流水线,进行构建和验证。
至此,就完成了一次代码修改提交到主干的过程,后续可以根据项目和业务的要求继续进行测试和部署。
标签:主干,代码,修改,开发,提交,云上,分支 From: https://www.cnblogs.com/huaweiyun/p/16616346.html