社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Git

源代码提交SOP(Git版)

dotNET跨平台 • 2 年前 • 171 次点击  

一、原则

1、在维护公共基类、工具类和二方库等可能影响到其他团队成员的代码之前,必须同其他团队成员讨论,达成共识后方可进行维护。

2、严格遵守源码签入规范,有助于发现代码漏洞,降低代码合并风险,降低远程仓库代码的出错概率,请务必细心、审慎,不要因为时间紧就跳过流程步骤。在保证质量的前提下,进度才有意义。

二、六步提交法

1、开始编码前,从远程仓库pull最近成功构建的代码(有助于减少代码合并冲突)。

2、编写功能代码和对应的单元测试(若无特殊情况工具类和二方库必写单元测试,业务代码可自行判断)。

3、本地构建

1)编译代码、执行本次commit对应的单元测试、运行代码,确保单元测试通过,程序运行正常,功能满足需求;

2)检查代码是否符合编码规范(建议使用静态代码检查工具自动检查);

3)执行commit预操作,逐行比对每个改动点,检查代码逻辑是否符合编码意图,注释是否遗漏;

4)填写commit信息,注意写明分支名称,本次提交关联的任务或者Bug编号;若有多个内容,应分点说明。建议完成独立的任务或者修复Bug就commit,尽量避免一个任务多次commit或者一次commit中包含多个任务。

提交信息样例1:

develop_3.0:1、[TASK QZA-339]Tyson WS Clinet 接入;2、jserver-parent增加ws client依赖包;

提交信息样例2:

master:1、[BUG QZA-433]足球-重要Tab增加本地缓存;

5)确认commit;

4、二次构建

1)从远程仓库pull最新代码到本地;若没有代码更新,可跳过步骤4;

2)若出现冲突,需谨慎合并代码;若不理解冲突代码,可叫上代码作者一起合并;

3)编译代码、执行本次commit对应的单元测试、运行代码,确保单元测试通过,程序运行正常,功能满足需求;

4)再次commit,比对改动点,填写commit信息;

5、push代码。

6、提交代码自动化构建(若有)

1)自动化工具监听代码提交,自动构建代码,执行单元测试,若构建失败或者单元测试执行失败,发消息通知团队;

2)依据“立即暂停原则”团队收到失败通知后,暂停新代码push,也不允许pull代码,直到接收到构建成功通知;问题代码作者需立即解决问题,重新提交。


Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/125957
 
171 次点击