云效Codeup怎么创建分支并进行分支管理,分支是为了将修改记录分叉备份保存,不受其他分支的影响,所以在同一个代码库里可以同时进行多个修改。创建仓库时,会自动创建 Master 分支作为默认分支,后续研发同学可以创建新的分支,开发完成后将其合并至默认分支。
分支
Codeup将分支划分为三种:我的、活跃、非活跃
”我的“:我创建的 + 我push的,便于用户进行分支管理。
活跃:近三个月有push的分支,便于用户进行分支的查看及开发。
非活跃:近三个月内无push的分支,便于用户进行分支及时清理。
新建分支
新建分支支持两种方式:Web 端创建及本地创建。
1.Web 端创建
在分支列表中点击右上角的新建分支按钮,展现分支创建弹窗。
填写分支信息并确认后即可完成分支创建。
2.本地端创建
在 master 或其他分支下(本地分支),输入命令git checkout -b slave新建一个分支。输入命令git push origin slave把分支推送到远程仓库。
删除分支
普通分支
开发人员可在分支后点击更多展现删除入口,可点击删除分支。
保护分支
不支持删除,需要取消保护后才可删除。
默认分支
不支持删除,需取消默认后才可删除。
分支对比
点击更多操作展现比较入口,展现比较弹层,可进行分支间的对比。
分支设置
1.默认分支
默认分支作为 Clone、创建分支、合并请求、代码浏览的基础分支存在,同时可防护分支被误删除。作为代码库管理员可以按团队开发习惯修改默认分支,下拉选择需要修改的分支,参见①。
2.保护分支
保护分支定义:限制删除分支,限制 Force Push。
代码库管理员设置合适规则的分支进行保护,被设置成保护分支即不允许任何人删除分支和强制 Push,前者主要是对重要分支保护防止误删除,后者是避免强制 Push 的操作会使 Commit 无法追溯,参见②。
新建保护分支规则
分支选择:支持两种形态
- 具体分支,注意默认分支需携带标签
- 分支通配符规则(目前只支持 ? 和 *),当匹配多个分支时展示所有匹配的分支,参见上图①。
- 如果一个保护分支存在多个规则,以哪个为主?逻辑:如果代码库的某个分支可匹配多个保护分支规则,则包含特定分支名称的规则具有最高优先级;如果某个分支存在多个通配符规则匹配,则首先创建的分支规则将具有更高的优先级。
- 如:代码库中有分支master、master-1、master-prod-1,有规则顺序如下:master-、master-1、master-prod-,匹配规则如下:
推送规则:展示可以直接 Push 到该保护分支的人员,参见上图②。
- 默认允许管理者和开发者。一旦勾选取消某种角色,意味着该角色不允许进行直接推送。
- 无:不允许任何人支持进行推送。
合并规则:即合并请求中的合并(merge,accept之后有 merge 流程的合并请求即可合并),展示对应支持此操作的人员,参见上图③。
- 默认允许管理者和开发者。一旦勾选取消某种角色,意味着该角色不允许进行合并操作。
代码评审规则设置
采用普通模式的:
最少评审通过人数:1
允许通过合并请求:管理员 + 开发者
默认评审者:如果没填人,该项不展示,限制最多20
允许创建者通过:是 / 否
采用 CodeOwner 模式 / CodeOwner 专注模式的:
评审模式:CodeOwner 模式 / CodeOwner 专注模式
允许创建者通过:是 / 否
CodeOwner 介绍详见文档CodeOwner 机制。
自动化执行检查
代码扫描
如果未在库中开启任何扫描,则合并请求无法进行扫描卡点,参见①。
测试任务配置详见集成与服务部分,参见②。
当开启某种扫描服务后,可针对服务进行评审卡点。CodeUp 支持敏感信息扫描及Java规约扫描,参见③。
流水线检测
在保护分支中,支持对接 Flow 流水线进行合并请求的检测卡点。
如果当前代码库从未关联过流水线,需要前往 Flow 创建或关联已有流水线:如何关联 Flow 流水线
注意 :为了每次提交自动触发流水线执行检测,创建流水线时请手动勾选「代码提交」触发事件,否则需要手动触发流水线输出检测结果,作为合并请求的卡点检查数据:
关联流水线后,可在此选择需要用于合并检测卡点的流水线:
被选中的流水线将用于任何申请合并至当前保护分支的合并请求的卡点条件,需要流水线执行通过才能合并至当前保护分支。
注意 :若被选中的流水线未运行,同样不满足合并条件要求,因此请保证用于卡点的流水线已运行。
云效Codeup怎么创建分支并进行分支管理,分支是为了将修改记录分叉备份保存,不受其他分支的影响,所以在同一个代码库里可以同时进行多个修改。创建仓库时,会自动创建 Master 分支作为默认分支,后续研发同学可以创建新的分支,开发完成后将其合并至默认分支。