0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

极狐GitLab—新一代源代码管理仓库

经纬恒润 来源:hirain_tech 作者:hirain_tech 2023-11-29 15:40 次阅读

产品概述

极狐GitLab是一款具有软件开发全生命周期的DevOps能力的新一代源代码管理仓库,无缝集成代码托管、敏捷管理、CI/CD,从需求管理到应用上线能够形成数据的完整串联。极狐GitLab具有高可用可扩展的架构特点,可提供万人规模的架构行业实践参考和专业服务支持;提供专业、可靠的代码资产管理,多举措保障代码质量,规范研发流程;同时支持跨群组、多项目敏捷管理,可实现精细过程管理,持续高效交付。

产品介绍

定期代码评审

在GitLab中团队成员可以审核任何人的代码并提供建议,并且在开发成员提交代码后限制自身合并,从而避免未经审核验证的代码并入主分支。使用GitLab代码合并请求审查规则功能,可以设置哪些类型的用户能够参与合并请求的批准,同时可设置合并代码所需的最少批准人数。通过最低核准人数设置多人审批,进一步保证代码质量,更有利于用户建立流程化的代码评审机制。

wKgaomVm6n6AETVwAABlrD4Z2Qs855.png

wKgZomVm6oeAFYX_AAB7JP9RbnA565.png

多种推送规则

GitLab支持多种推送规则,来保障代码仓库安全。用户通过设置推送规则,有利于准确地控制推送到仓库的内容。推送规则包括禁止无效文件、超大文件推送,以避免仓库失控,并且可禁止secret文件推送,阻止敏感信息泄漏。同时GitLab可规范分支命名,避免分支名称混乱冲突;支持commit签名验证,避免变更代码遭受篡改。

wKgZomVm6pCAO3XCAACOF5oEKLU504.png

群组wiki

当使用GitLab群组来管理多个项目时,文档可能会跨越多个群组,用户可以通过创建群组wiki,确保所有群组成员都有相应的访问权限。

代码所有者

 通过代码所有者功能可定义拥有项目代码库特定部分的专业知识的用户。定义仓库中文件和目录的所有者后,可以方便地:要求所有者批准更改、识别所有者

wKgaomVm6p-AfORLAAA0i_AuvoU667.png

将代码所有者与合并请求批准规则结合使用,可以帮助用户构建灵活的批准工作流程:使用代码所有者来确保质量、使用批准规则来定义与仓库中特定文件路径不对应的专业领域

自定义模板

自定义群组级模板

GitLab支持自定义群组级项目模板,用户通过将项目模板添加至群组,可快速创建项目。具有访问权限的任何人,都可以将公开项目和内部项目作为新项目的模板。

自定义实例模板

在托管系统中,企业通常需要跨团队共享自己的模板。使用GitLab实例模板仓库,可允许管理员选择一个项目来收集实例范围内的文件模板。然后,这些模板会在项目保持安全的同时,向所有用户公开,并可用于整个实例。

代码质量

代码质量可用于分析源代码的质量和复杂性,有助于保持项目代码简单、可读且更易于维护。在代码中引入书写规范和检查工具,提交代码时在本地和CI/CD流水线中自动强制检查,有助于把不良代码拦截在合并之前。在将更改提交到默认分支之前,通过在CI/CD流水线中运行代码质量报告,方便用户验证更改是否会降低代码的质量。

内置Code Climate

支持多种语言,多种质量类型

支持自定义配置模板

使用简单,仅需一行CI/CD配置代码

质量报告可在GitLab MR和CI/CD中查看

wKgaomVm6qqAPQqKAABnwd8mXe0071.png

分支策略

GitLab Flow提供了一种简单、透明、高效的Git工作方式,使用极狐GitLab Flow,开发者可以在不同的环境中协作并维护多个版本的软件。极狐GitLab Flow减少了发布、标记和合并的开销(这是其他类型Git工作流程中常见的挑战),创造了一种更简单的代码部署方式。同时保证提交能够流向下游,确保每一行代码都在所有环境中得到测试。

wKgZomVm6rKABIOAAABrEHvNQus419.png

性能测试

极狐GilLab内置了sitespeed.io、Grafana K6等工具,方便用户进行配置,并对测试结果进行可视化展示,也可以将其作为代码合并请求评审依据。

wKgZomVm6riAWWqDAABgrXr-4JY278.png

流水线

极狐GitLab平台通过卡片、曲线图和柱状图的形式展示流水线的效能数据,包括成功和失败的流水线的个数、流水线成功率和部署频率以及平均修复时间等。企业管理者可以通过查看流水线的效能数据,定位影响因素,给出解决方案,最终以此提升公司的DevOps水平。除此之外极狐Gitlab定义了多种流水线类型,可以适应多种不同场景。如父子流水线、合并列车、多项目流水线:

父子流水线

父子流水线用于在同一个代码库中上下游流水线的关联和触发。它支持将一条复杂的流水线解耦为一主多从的多条流水线,并基于特定的规则构建起运行关系。在降低流水线维护复杂度的同时,支持可选择性地触发子流水线以提升流水线运行效率。

wKgaomVm6sCAX2frAAA_ZI62jgk737.png

合并列车

合并列车是围绕GitLab合并请求(MR)工作流衍生出来的高级功能,它基于合并结果流水线自动化执行多个MR的预合并,将预合并成功的多个MR最终正式合入主干分支,以此时刻保持主干分支是可用状态,支撑持续交付最佳实践,适合大型研发团队、多功能并行研发。

wKgaomVm6seAQyONAAA4KZNCox4725.png

多项目流水线

多项目流水线用于多个项目流水线之间的关联触发,它通过构建项目间流水线的上下游关系,支撑跨多个项目或团队的大型软件产品交付过程的高度自动化。同时还提供上游和下游两个视角,建立起可视化的流水线全景,提升跨团队之间的协作效率。适合大型跨项目/团队软件产品,多模块架构应用。

wKgZomVm6s2AZbRBAABqoaF-cf8448.png

应用案例

wKgaomVm6tWAUojtAAB4CpnwK88510.png




审核编辑 黄宇

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 源代码
    +关注

    关注

    95

    文章

    2929

    浏览量

    66063
收藏 人收藏

    评论

    相关推荐

    Suyu模拟器代码仓库因DMCA规则被GitLab移除,开发团队新仓已建

    目前,GitLab出于遵守法律规定的需要,已暂时终止了对Suyu模拟器代码库的访问以及开发者账号的操作。为此,GitLab发言人Kristen Butler向The Verge解释说:“Git
    的头像 发表于 03-22 14:55 301次阅读

    源代码审计怎么做?有哪些常用工具

    。 3、CodeQL:在 CodeQL 中,代码被视为数据,安全漏洞则被建模为可以对数据库执行的查询语句。 4、SonarQube:是个用于代码质量管理的开源平台,用于
    发表于 01-17 09:35

    TI 新一代明星CPU

    功耗,走红了全球。 今天给大家分享的是 TI 新一代明星CPU——AM62x,它相比上一代AM335x在工艺、外设、性能等多方面都有很大提升。 这里结合米尔电子的“MYC-YM62X核心板及开发板”给
    发表于 12-15 18:59

    为什么安秉信息的源代码防泄密软件这么稳定?

    现在很多研发性企业都会意识到企业的源代码文件需要防泄密保护,现在很多企业对于源代码只是用了git或svn版本管理服务器进行了简单的代码统一管控。虽然现在对于
    的头像 发表于 12-05 10:21 211次阅读
    为什么安秉信息的<b class='flag-5'>源代码</b>防泄密软件这么稳定?

    安秉信息源代码图纸防泄密方案,电路图纸,源代码文件

    安秉信息源代码图纸防泄密方案,电路图纸,源代码文件
    发表于 12-01 16:56 0次下载

    【幸 Core3566 模组试用体验】幸 Core3566 模组开箱

    SoC,DDR4内存,EMMC,电源管理IC,无线蓝牙模块和以太网芯片。 ()SoC RK3566是瑞芯微(Rockchip)的新一代芯片产品,该芯片采用了22nm的制程工艺,具有四核心,主频高达
    发表于 09-09 18:46

    STM32U599平衡图显性能与功耗的新一代产品

    STM32U599平衡图显性能与功耗的新一代产品,内容包含: STM32U5x9 的高性能与高阶图形加速器 、STM32U5的矢量图形 、STM32U5x9 的低功耗设计 、LPBAM - sensor hub等。
    发表于 09-05 07:21

    干货丨如何使用 GitLab 进行团队及项目管理

    从简易型到实用性的角度来看,目前在国内 GitLab 更适合中小企业及小型开发者使用,这是旨在帮助团队进行项目开发协作,为软件开发和运营生命周期提供了一个完整的 DevOps 方案。GitLab
    的头像 发表于 08-22 21:54 2295次阅读
    干货丨如何使用 <b class='flag-5'>GitLab</b> 进行团队及项目<b class='flag-5'>管理</b>

    被装仓库可视化管理系统-部队被装仓库管理系统

    被装仓库可视化管理系统-部队被装仓库管理系统 1、系统背景 随着军事装备物资的使用频率与消耗数量日益增加,部队对于仓库保障工作的要求越来越高
    的头像 发表于 08-16 09:23 331次阅读
    被装<b class='flag-5'>仓库</b>可视化<b class='flag-5'>管理</b>系统-部队被装<b class='flag-5'>仓库</b><b class='flag-5'>管理</b>系统

    Git项目远程仓库的使用

    远程仓库的使用 为了能在任意 Git 项目上协作,你需要知道如何管理自己的远程仓库。远程仓库是指托管在因特网或其他网络中的你的项目的版本库。你可以有好几个远程
    的头像 发表于 07-22 11:31 378次阅读

    XCP源代码分享

    XCP源代码
    发表于 06-25 11:43 8次下载

    [源代码]Python算法详解

    [源代码]Python算法详解[源代码]Python算法详解
    发表于 06-06 17:50 0次下载

    Python编程实战(源代码)

    [源代码]Python编程实战 妙趣横生的项目之旅
    发表于 06-06 17:49 1次下载

    wms仓库管理对企业的重要性

    一、什么是wms仓库管理? WMS是仓库管理系统的缩写,它提供了一个可视化、智能化的平台,帮助公司进行仓库作业的
    的头像 发表于 05-11 15:53 295次阅读

    如何将Arduino IDE中的源代码与ESP8266中的源代码进行比较?

    由于缺乏管理,我想知道是否有种(简单的)方法可以将我在 Arduino IDE 中的源代码与我实际烘焙到 ESP8266 中的源代码进行比较。现在有
    发表于 05-11 07:11