研发管理者如何7步规范管理企业代码资产?

本文涉及的产品
云效 DevOps 流水线,基础版人数 不受限
云效 DevOps 测试管理,基础版人数 不受限
云效 DevOps 制品仓库,基础版人数 不受限
简介: 本教程向您展示如何在云效上设置代码仓库模板,如何设置研发协作规范,如何启动代码检测,以及如何设置保护分支与合并卡点、如何实现研发工作与需求的自动化消息通知、如何度量代码数据?

推荐阅读对象:企业技术管理者、CTO、开发者

本教程向您展示如何在云效上设置代码仓库模板,如何设置研发协作规范,如何启动代码检测,以及如何设置保护分支与合并卡点、如何实现研发工作与需求的自动化消息通知、如何度量代码数据?

以下为学习内容大纲:

1. 导入仓库

2.体验代码库模板

3.启用代码检测

4.设置保护分支与合并卡点

5.设置仓库规范

6.创建合并请求

7.设置研发工作项自动化更新

8.查看代码度量数据

1. 导入仓库

云效提供多种代码资产导入的方案:

本文以网页端导入三方代码库为例进行体验。首先,导入一个公开的示例代码库,案例源代码库地址为:https://atomgit.com/yunxiao/detect-repo/tree/master。访问该示例库地址,选择 HTTPS 克隆,复制克隆地址:

访问云效 Codeup ,点击新建代码库-导入代码库,选择URL导入,在源代码库地址栏中填入刚才复制的克隆地址。由于是公开库无须鉴权,仅填写URL克隆地址即可,不需要填写账号/Token等信息。

2. 体验代码库模板

ⅰ. 设置模板库

导入完成后,进入该库,打开仓库设置,开启「设为模板库」:

该库即成为当前企业下的模板库,对该库有读权限的人可使用该模板库新建仓库。

ⅱ. 使用模板库

点击添加库,打开新建弹窗,选择「模板新建」-「自定义模板」,即可使用上一步设置的模板库作为新建的模板。可以选择是否导入模板库的全部分支,如果不勾选,则仅导入默认分支:

点击确定后完成新库创建。

3. 启用代码检测

ⅰ. 准备检测方案

从首页菜单进入「代码检测」-「检测方案」,选择「Java开发规约检测」,如没有已有方案,可新建一个方案,然后选择「Java开发规约检测」。云效也支持其他语言的检测规则包,实际使用时可按需选择。

点击Java开发规约检测的卡片可查看具体检测规则内容:

ⅱ. 启动检测任务

进入上一节创建的代码库中,点击左侧菜单的「代码检测」:

选择期望的检测方案,勾选触发方式,包括「提交触发」和「合并请求触发」,然后勾选同意协议,最后点击新建并执行:

此时将针对默认分支进行一次指定方案下的代码扫描。

检测完成后可以查看检测结果:

点击问题列表可查看问题详情:

4. 设置保护分支与合并卡点

进入设置-「分支设置」,点击「新建保护分支规则」:

设置master为保护分支,勾选不允许任何人直接推送保护分支,且只有管理者可以合并评审:

开启「要求合并前通过代码评审」,将代码评审作为必须通过的卡点;开启「要求合并前通过自动化状态检查」,勾选上一步创建的代码检测任务作为必须运行通过的卡点:

卡点信息配置完成。

5. 设置仓库规范

仓库规范属于高级版功能,新用户可免费试用1个月,如遇以下页面点击免费试用即可使用。

进入设置-「仓库规范」,点击「启用仓库规范」:

建议选择「系统方案」进行体验,也可以自定义方案。以下用「功能分支规范」为例,规则如下:

确定后可见当前系统方案已生效,包括分支命名规范和合并方向规范:

  • 分支命名规范限制了分支创建时的命名要求,避免不合规的分支被创建、仓库中分支泛滥的问题。
  • 合并方向规范限制了源分支和目标分支的选择,避免不合企业要求的合并被创建。

针对历史中命名不合规的分支,将在分支列表中进行提示:

6. 创建合并请求

基于该库的原 master 分支创建一个命名合规的 feature/A 分支:

切换到新建的分支 feature/A,尝试新建文件:

输入内容后进行提交:

切换至「合并请求」菜单,点击「新建合并请求」,选择 feature/A 合并至 master,该分支名和合并方向都是符合仓库规范的,因此可以完成创建:

可见合并请求中有之前设置的保护分支卡点,包括评审人数、评论数、自动化检查的卡点:

需要依次解决这些卡点才能够完成合并操作,请自行发挥去解决他们吧!

7. 代码相关的自动化规则设置

开发同学一定有共鸣的事情就是:怎么总是忘记更新任务状态啊!

  • 代码已经在开发中了,却忘了从待开发改成开发中
  • 代码已经发布上线了,却忘了更改状态为已发布

场景一:当任务下面关联代码提交时,系统自动变更任务状态为开发中。

第一步:分支关联任务ID

开发人员在特性分支上提交代码时,可以关联任务,直接去关联项目中已有任务,或者通过#ID的方式进行关联。

第二步:查看关联情况

提交之后,可以在项目中打开任务的“其他”找到“代码”关联项中看到此次的代码提交:

第三步:设置自动化规则

进入到项目空间,点击左下角“设置”按钮,找到“自动化规则”-“新建自动化规则”

规则内容:当任务关联代码提交时,该任务可以自动由「待开发」状态流转为「开发中」状态:

场景二:当任务下面关联合并请求时,系统自动变更任务状态为待评审。

第一步:创建分支合并关联任务

创建分支合并关联开发人员开发完成特性分支后,会将特性分支合入测试分支上,需要进行合并评审。创建分支合并时,可以直接去关联项目中已有任务。

第二步:查看关联情况提交之后,可以在项目中该任务的其他-代码关联项中看到此次的代码合并请求:

提交之后,可以在项目中该任务的其他-代码关联项中看到此次的代码合并请求:

第三步:设置自动化规则

进入到项目空间,点击左下角“设置”按钮,找到“自动化规则”-“新建自动化规则”

规则内容:当任务关联合并请求时,该任务可以自动由「开发中」状态流转为「待评审」状态,并发送站内信信&钉钉消息等给负责人

规则内容:当任务关联合并请求为已通过时,该任务可以自动由「待评审」状态流转为「已评审」状态

规则内容:当任务关联合并请求为已合并时,该特性分支已合并测试分支后,交由测试进行集成测试,该任务可以自动由「已评审」状态流转为「待测试」状态;

当任务关联合并请求为已合并时,系统自动变更任务状态为待测试。同时将该任务负责人变更为测试人员,并发送钉钉消息进行提醒。

8. 代码度量

云效效能度量Insight提供了代码资产度量,打开效能度量Insight,找到“常用报表”,选择“代码度量”。

  • 代码库概览:当前时刻已选代码库的代码行总量和安全问题总数;
  • 代码变更概览:所选时间段内,所选数据源范围内(如代码库或分支等)的新增/删除代码行数、代码提交次数和各提交平均包含的代码行数;
  • 代码变更按人员排序:所选时间段内,各成员提交代码行数的 Top5 数值;
  • 代码提交提交人排序:所选时间段内,各成员提交代码次数的 Top5 数值;
  • 代码提交时段分布:所选时间区间内,每日各时段的代码提交次数分布,颜色越深表示在该区间的提交次数越多;

上一篇:快速入门下一篇:管理者、新团队成员如何在云效上初始化工作流

相关实践学习
2分钟自动化部署人生模拟器
本场景将带你借助云效流水线Flow实现人生模拟器小游戏的自动化部署
SVN版本控制系统
SVN是现在软件开发之中的主流软件版本控制工具,在工作之中利用SVN可以有效的解决多人开发的代码管理问题,本课程将为读者讲解SVN服务器的配置以及基于MyEclipse的SVN客户端插件的配置与使用,并且在讲解之中着重讲解了冲突的产生于解决。
相关文章
|
6月前
|
监控 数据挖掘 BI
探索项目管理系统:解析五大功能,洞悉项目成功的关键
项目新手常忽视管理系统的价值,而高手已借助系统实现规划清晰。优秀的项目管理系统必备五大功能:项目WBS分解、图表报表、工时管理、团队协作和任务自动化。WBS能将复杂项目拆分成可管理任务,明确责任,评估时间和资源需求,便于跟踪进度。Zoho Projects作为示例,支持创建任务层级,利用甘特图和资源利用图监控进度和资源分配,工时管理则帮助控制项目时间和成本。同时,系统促进团队协作,如通过即时通讯和知识库增强团队凝聚力,而任务自动化则减少错误,提升效率。
94 1
|
项目管理
深入解析PMP项目内部运营环境
在项目管理领域,PMP认证是一项备受尊敬的资格,它强调了对项目内部运营环境的深刻理解。PMP专业人士不仅需要了解项目管理的基本原则,还需要熟悉项目内部运营环境的方方面面。本文将深入探讨PMP项目内部运营环境的重要性以及如何有效管理这一环境。
|
4月前
|
监控 安全 测试技术
|
5月前
|
监控 数据可视化 BI
清单管理软件推荐:提升任务效率与组织能力
**Zoho Projects是一款推荐的清单管理工具,它支持任务关联和实时更新显示,提升效率。通过派生和关联关系组织任务,用甘特图监控进度,还提供直观的统计报表功能。适合个人和中小企业免费试用,以优化工作流程。**
45 0
CMMI流程规范—项目风险管理流程及输出物
CMMI流程规范—项目风险管理流程及输出物
217 0
|
6月前
|
数据采集 监控 前端开发
数据治理必读系列(二)丨3步提升企业数据标准化程度
数据治理必读系列(二)丨3步提升企业数据标准化程度
216 0
|
大数据
客户成功体系如何构建?请看这7步
客户成功体系如何构建?请看这7步
|
开发框架 安全 前端开发
区块链财务管理平台如何开发?区块链财务管理平台开发源码规则解析
开发一个区块链财务管理平台需要多个方面的技术和知识,以下是一些可能的步骤和考虑因素:
|
安全 API
永续合约丨交易所系统开发步骤详细/案例规则/成熟技术/方案介绍/需求分析/源码程序
The price of a perpetual contract is generated by trading between the long and short sides on the exchange, determined based on market supply and demand and the trader's commission price. The exchange will match buying and selling orders based on the entrustment of both long and short parties to mee
|
大数据 数据挖掘 测试技术
数据项目交付小记:测试报告&公共层&中台组织
最近项目交付上遇到了一些问题,我把自己的回答和想法记录一下,分享给大家。
17280 1