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

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

推荐阅读对象:企业技术管理者、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 数值;
  • 代码提交时段分布:所选时间区间内,每日各时段的代码提交次数分布,颜色越深表示在该区间的提交次数越多;

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

相关实践学习
流水线运行出错排查难?AI帮您智能排查
本实验将带您体验云效流水线Flow的智能排查能力,只需短短1-2分钟,即可体验AI智能排查建议。
ALPD云架构师系列 - 云原生DevOps36计
如何把握和运用云原生技术,撬动新技术红利,实现持续、安全、高效和高质量的应用交付,并提升业务的连续性和稳定性,这是云原生时代持续交付共同面对的机会和挑战。本课程由阿里云开发者学堂和阿里云云效共同出品,是ALPD方法学云架构师系列的核心课程之一,适合架构师、企业工程效能负责人、对DevOps感兴趣的研发、测试、运维。 课程目标 前沿技术:了解云原生下DevOps的正确姿势,享受云原生带来的技术红利 系统知识:全局视角看软件研发生命周期,系统学习DevOps实践技能 课程大纲: 云原生开发和交付:云研发时代软件交付的挑战与云原生工程实践 云原生开发、运行基础设施:无差别的开发、运行环境 自动部署:构建可靠高效的应用发布体系 持续交付:建立团队协同交付的流程和流水线 质量守护:构建和维护测试和质量守护体系 安全保障:打造可信交付的安全保障体系 建立持续反馈和持续改进闭环
目录
相关文章
|
消息中间件 数据可视化 Java
Linxu下RocketMq及可视化界面的搭建
Linxu下RocketMq配置信息及可视化界面的搭建
2679 0
|
7月前
|
机器学习/深度学习 算法 自动驾驶
基于YOLOv8模型的行人车辆多目标检测计数与跟踪系统
本研究基于YOLOv8模型,针对智能交通与公共安全需求,开展行人车辆多目标检测、计数与跟踪技术研究。通过融合YOLOv8高精度检测与DeepSORT稳定跟踪,实现复杂场景下目标的实时定位、统计与轨迹追踪,提升交通管理效率与公共安全保障能力,推动智慧城市发展。
|
开发工具 git
Git - Smart Checkout、Force Checkout 区别
Git - Smart Checkout、Force Checkout 区别
3139 0
Git - Smart Checkout、Force Checkout 区别
|
8月前
|
网络协议 安全 应用服务中间件
阿里云 SSL 证书申请全流程:新手也能看懂的图文教程
不管是个人做网站测试,还是企业刚起步需要给网站加安全防护,SSL 证书都是必不可少的 —— 它能让网站从 “http” 变成 “https”,浏览器地址栏会显示小绿锁,访客看着更放心,数据传输也更安全。阿里云提供了不同类型的 SSL 证书,其中免费的个人测试证书适合新手入门,下面就用通俗易懂的语言,一步步教你怎么申请、验证和下载,就算是第一次操作也能跟着做。
|
8月前
|
人工智能 运维 算法
基于AR衍射光波导眼镜的电力配电站智能化巡检运维方案|阿法龙XR云平台
本方案采用50克轻量AR衍射光波导眼镜,集成电子化SOP、AI识别、自动报表与视频分析功能,实现配电站巡检全流程智能化。透明显示保障视野,AI精准识别设备状态,自动记录并分析数据,提升巡检效率30%以上,准确率达95%,推动运维向数字化、可追溯转型。
|
9月前
|
人工智能 运维 算法
AR眼镜基于上下文智能识别:电力运维高效规范操作应用方案|阿法龙XR云平台
基于AR与AI融合技术,打造智能电力运维解决方案。通过轻量化AR眼镜,实现设备自动识别、状态智能研判、操作规范引导与异常实时预警,结合语音交互与全息显示,提升巡检效率,降低误操作风险,推动电力运维向智能化、可视化、标准化升级。(238字)
|
机器学习/深度学习 人工智能 算法
模型即产品:万字详解RL驱动的AI Agent模型如何巨震AI行业范式
未来 AI 智能体的发展方向还得是模型本身,而不是工作流(Work Flow)。像 Manus 这样基于「预先编排好的提示词与工具路径」构成的工作流智能体,短期或许表现不错,但长期必然遇到瓶颈。这种「提示驱动」的方式无法扩展,也无法真正处理那些需要长期规划、多步骤推理的复杂任务。下一代真正的LLM智能体,则是通过「强化学习(RL)与推理(Reasoning)的结合」来实现的。
911 10
模型即产品:万字详解RL驱动的AI Agent模型如何巨震AI行业范式
|
Linux
Linux 文件权限详解
Linux 文件权限用于控制文件和目录的访问,分为读、写、执行三种权限,并针对文件所有者、所属组和其他用户分别设置。使用 `ls -l` 查看权限信息,`chmod` 修改权限。符号方式(如 `u+rwx`)和数字方式(如 755)均可设置权限。例如,`chmod +x filename` 添加执行权限给所有用户,`chmod 644 filename` 设置所有者读写、其他用户只读权限。
652 13
|
数据采集 DataWorks 大数据
DataWorks
DataWorks
1754 5
|
存储 NoSQL 关系型数据库
RDS(Relational Database Service)和Redis
【7月更文挑战第12天】
1862 0