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

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

3天内不再提示

稳定可靠安全无忧,华为云发布代码托管服务CodeArts Repo

科技怪授 来源:科技怪授 作者:科技怪授 2023-03-22 16:03 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

2022年2月,黑客窃取某著名公司大量源码,包含硬件原理图、源代码、显卡驱动源码等信息,并对企业勒索巨额赎金;3月,全球最大的开源代码托管网站经历了多次长达数个多小时的宕机,数百万开发者无法提交代码,导致开发活动中断。

源代码是企业最宝贵的资产之一,一旦保存源代码的系统出现安全性或稳定性问题,将给企业商业及信誉带来不可估量的损失。随着软件规模的不断扩大,生成软件的源代码规模也在急剧上升,单个软件系统规模已达数亿行、开发人员达数千人——如何管理好庞大的源代码,并让企业员工持续稳定的开展软件开发活动将成为一个重大的挑战。

2月20日,华为云代码托管服务CodeArts Repo将于22:00正式上线,这是一款全栈自研、基于Git的云端代码托管服务,旨在保护企业核心代码资产安全,提升企业研发质量和效率。

代码管理工具是软件开发的基础不断提升研发质量和效率,缩短TTM(Time to Market)是软件企业商业成功的关键。如今,一款软件通常由多人协作开发而成,代码管理工具不仅是研发资产的重要载体,同时也支撑了版本化配置管理、代码开发的工作流等活动,通过与CI/CD工具服务集成,能够有效提升团队协作效率和自动化交付效率。

poYBAGQatlmAX1V3AADmR8d6E8E887.png

▲代码管理工具在开发活动中发挥着关键作用

为了让代码资产更加安全和稳定,一款现代化代码管理工具应当具备如下主要能力:版本控制

包含代码存储功能,支持代码上传和下载,并能够简单、准确地记录和重现代码的任何一个历史版本。协同开发

支持多人协同开发,如不同开发人员可同时在同一个软件模块上工作,同时对同一代码部分做不同的修改,即使是跨地域分布的开发团队也能互不干扰。质量管控

提供在线阅读代码和代码检视功能,支持自动化持续集成与持续交付工具(CI/CD),对代码进行质量检查,确保符合质量的代码才能入库。稳定可靠

支持多人并发在线作业,并发上传和下载代码,保持长期稳定,以保障企业研发活动不中断。安全防护

能够保护企业的代码核心资产安全,抵御黑客盗取代码、对源代码投毒、恶意代码注入等攻击。

华为云CodeArtsRepo让代码核心资产安全无忧为了支撑业务的高速发展,华为公司内部代码管理工具也在不断演进。从最开始满足基本配置管理需求,到支撑公司内源协同开发,再到支撑公司可信变革、达成CleanCode目标,华为的代码管理工具经历了“商用+开源”,到“边买边造”,再到“自给自足”的三个阶段。

自2019年来,通过历时3年的“云化改造、安全韧性构筑、全栈自研”三大战役,华为基于云原生打造了高安全、高韧性、全场景开发工作流覆盖的可信代码仓。

如今,华为云CodeArts Repo管理并保护着华为1100亿行代码,支撑15万人开发作业,日均1亿次下载量、1PB传输流量、3亿次API调用,一套系统支撑了华为嵌入式、云、终端、车等各类型产品代码管理和协同开发。

现在,华为云将内部多年积累的代码管理能力沉淀到CodeArts Repo工具,发布6大特性。

特性一:自研内核,确保代码安全,稳定高效开发

针对开源代码管理工具漏洞多、单体架构、存在连续性风险,和无法满足华为大规模、多场景开发作业流等问题,华为云CodeArts Repo通过自研内核,基于零信任思想进行设计和安全加固,从黑客视角建立攻击路径模型,落地6大类100+小类安全措施,从接入层、业务层,存储层到基础设施层全面构筑安全防护能力,确保代码不丢,系统不破,代码资产可恢复。

pYYBAGQatlqAI1oFAACCRsxGcdE698.png

此外,华为成立了“蓝军”部门,每年例行专门针对代码托管工具进行模拟攻击测试,以攻促防,不断提升CodeArts Repo的安全能力。

为应对公司巨量业务增长,CodeArts Repo在架构上充分利用云原生技术优势,基于云化基础设施,实现容灾、备份、流控、服务降等,保障了业务不中断和数据不丢失,多维度提升可靠性。

CodeArts Repo在技术上突破底层硬件IO带宽限制、修改Git内核提升文件下载寻址效率、应用多级缓存等手段提升代码下载效率,经测试,相比开源同类产品具有超过10倍的写入、超过50倍的读取能力提升,可支撑万级并发下载,10万级并发在线作业。

特性二:覆盖基于Git的主要工作流,满足多种开发场景华为云CodeArts Repo支持Git Flow、Gitlab Flow、Github Flow等所有工作流。华为将以前使用Gitlab、Github、Gerrit部署的100多套系统归一到CodeArts Repo一套系统,期间经历了超过10000条来自华为各产品线的需求锤炼,不断完善和优化,既能满足强流程规范的大规模产品协同开发,也适用于采用DevOps模式、快速上线的产品开发。

poYBAGQatluAaDrQAACfy_SvGqk836.png

特性三:多形式代码检视活动,提升代码质量,传递开发经验《代码大全》的研究结果显示,各种研发活动中,代码检视的代码检测率高达60%,可以有效提前发现显而易见的错误随代码上库,提升代码质量,并且实现高级开发人员的知识传递,增强团队质量意识。

华为云CodeArts Repo提供分散式和集中式的代码检视能力,支持团队随时开展代码检视活动。

以合并请求为例,开发人员发起代码合并请求后,系统可自动分配给不同检视人员,检视人员利用碎片化时间检视代码,配合门禁系统保证检视意见关闭才能合入该合并请求。团队成员也可以集中到一起,直接在浏览器中打开代码仓文件,进行在线检视,提出检视意见后使跟踪流程闭环检视意见。

pYYBAGQatlyADA8zAADOIi9JWqo568.png

另外,CodeArts Repo提供灵活的检视意见分类功能,既集成华为优秀的实践,使用此功能可以有效规范团队检视活动,同时沉淀团队经验和知识,将知识在公司、产品、项目等不同范围内传递。

特性四:质量门禁,确保每一行入库代码Clean

在软件生命周期中,缺陷发现越早、修复越早,缺陷的影响和修复代价就越小,数据显示,产品发布后每个缺陷的平均修复成本是验证阶段的6倍以上。因此为了避免有缺陷的代码合入主干,灵活有效的门禁控制必不可少。

poYBAGQatl2AERb2AADdrJzMKRU200.png

华为云CodeArts Repo提供“人工审核+CICD自动化检查”双重看护代码质量机制。通过保护分支功能,针对不同的角色控制代码的推送和合并权限,确保代码在推送入库的时候就符合质量要求。

配合CI/CD自动化检查工具链,提供代码静态检查、安全检查、测试结果验证、代码检视人员角色和数量检查、检视意见闭环率等几十种细粒度门禁控制策略,用户可灵活配置以满足不同的企业规范。

特性五:记录代码来龙去脉,双向可追溯

软件的可追溯性是软件工程的基础属性,具备可追溯性是良好的软件工程能力的客观呈现。可追溯性要求软件生产过程中从需求分析到编码、构建、验证、发布过程中产生的需求、设计、代码、用例、缺陷、发布等业务对象以及其关系的准确记录。

poYBAGQatl6ALiFqAAEJycD3bHQ793.png

华为云CodeArts Repo支持建立工作项和合并请求或者代码提交commit的双向关联关系,实现软件开发过程可追溯,通过可信的开发过程,保障结果可信。

以华为内部为例,团队通过在代码托管工具设置规则,确保了每次的代码入库都有对应的工作项,通过对关联关系数据进行识别、监控和预警,及时发现不合规的代码,提高产品质量。企业也可以在处理现网问题时根据关联关系找到对应的代码版本,快速修复。

特性六:内置多种模板,确保开发规范有序软件开发是一项创造性的活动,也是一项复杂的多人协同活动。在软件开发过程中,企业需要选择适合的开发工作流,并建立规范的开发协作流程来保障产品能够持续高质量交付。

pYYBAGQatl-AcBhfAAG03ry5yd0480.png

华为云CodeArts Repo凝聚了华为公司内部各类研发场景的规范,可以帮助企业进行组织级开发规则制定和落地,促进产品质量和开发效率提升。

典型如代码提交规则、分支/tag命名规则,代码上库审核规则、代码质量门禁规则等,也提供了灵活的模板配置能力,如仓库模板、代码检视模板、合并请求模板。企业可以通过这些规范确保团队开发行为一致,产生的研发数据格式一致,并基于研发数据做效能分析,持续改进研发能力。

得益于以上特性,华为云CodeArts Repo如今已广泛应用于国内外财政、社保、物流、能源等领域,加速企业数字化转型。

如上海某知名大型物流企业拥有超过100个系统平台,1000多个仓库,其业务涉及快递、物流、跨境、仓储与供应链等多项业务和解决方案。该企业使用CodeArts Repo管理代码和协助规范企业开发活动,有效提升研发团队协作效率,降低代码质量问题70%。

源于华为,服务世界,华为云CodeArts Repo着力将华为公司30余年的源代码管理经验外溢,服务千百行业。面向未来,华为云将对CodeArts Repo持续创新升级,探索边缘下载加速、多仓协同,提供更丰富的安全检查特性,携手国内外客户、伙伴以及开发者,共同提升软件开发质量和效率。

审核编辑黄宇

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

    关注

    30

    文章

    4976

    浏览量

    74359
  • 华为云
    +关注

    关注

    3

    文章

    2835

    浏览量

    19369
收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    华为MaaS升级登陆香港 支援GLM-5模型

    华为宣布,旗下MaaS(Model as a Service,模型即服务)在香港完成全新升级,正式支援GLM-5模型,并预告两款智能体产品———华为
    的头像 发表于 04-05 17:40 2083次阅读

    发布服务提交审核

    完成所有应用信息和版本信息的配置后,可将元服务提交至华为方进行发布审核。 登录AppGallery Connect,点击“APP与元服务”。 选择要
    发表于 12-04 14:23

    发布服务配置隐私声明

    服务必须先使用AGC的隐私声明托管服务生成自己的隐私声明,才能在版本信息页面选择到。详细内容参见配置隐私声明(元服务)和配置用户协议。 登录AppGallery Connect,点击
    发表于 11-25 11:24

    华为发布全新升级星河AI MSP服务解决方案

    华为数据通信创新峰会2025(HNS 2025)欧洲站期间,MSP(Managed Service Provider,管理服务提供商)高层圆桌会议在慕尼黑成功举办。会上,华为
    的头像 发表于 10-13 09:44 1047次阅读

    服务发布准备工作

    发布服务前,请详细了解华为应用市场的审核要求,并提前准备发布所需的文件、资源,以便您能顺利、快速通过发布审核流程。 仔细阅读元
    发表于 10-10 15:48

    软通动力携手华为发布AI应用创新领航计划

    华为开发者大会 2025期间,作为华为全球战略合作伙伴,软通动力受邀出席华为多场重要活动和会议。双方联合与伙伴一同发起“
    的头像 发表于 06-26 10:31 1452次阅读

    华为开发者大会2025(HDC 2025)亮点:华为发布盘古大模型5.5 宣布新一代昇腾AI服务上线

    HarmonyOS、昇腾AI服务、盘古大模型等最新科技创新成果。 在主题演讲中,华为常务董事、华为计算CEO张平安宣布基于CloudMa
    的头像 发表于 06-20 20:19 4653次阅读
    <b class='flag-5'>华为</b>开发者大会2025(HDC 2025)亮点:<b class='flag-5'>华为</b><b class='flag-5'>云</b><b class='flag-5'>发布</b>盘古大模型5.5 宣布新一代昇腾AI<b class='flag-5'>云</b><b class='flag-5'>服务</b>上线

    华为乾崑智能车服务通过CCRC IT产品信息安全认证

    华为乾崑智能车服务顺利通过中国网络安全审查认证和市场监管大数据中心(CCRC)的IT产品信息安全认证,成为首个获得车联网
    的头像 发表于 06-14 10:58 1624次阅读

    HarmonyOS5服务技术分享--函数预加载文章整理

    ​​嗨,亲爱的开发者朋友们!​​? 今天咱们来聊聊如何使用​​端一体化方式开发函数​​,尤其针对华为的预加载服务。整个过程会手把手带你从零开始,涵盖创建工程、编写
    发表于 05-22 20:33

    HarmonyOS5服务技术分享--Serverless抽奖模板部署

    活动。不用写复杂代码,跟着步骤走就能搞定,文末还有部署避坑指南哦~ 一、前期准备 1️⃣ ​​注册账号+创建项目​​ 先到华为开发者平台注册账号 创建新项目时记得勾选\"开发
    发表于 05-22 20:25

    HarmonyOS5服务技术分享--Serverless搭建抽奖

    /function.js文件中的函数名(对应之前创建的函数) 压缩dist文件夹内容为dist.zip(注意❗要选中文件后压缩,别直接压缩文件夹) 2️⃣ 托管配置: 进入
    发表于 05-22 20:20

    HarmonyOS5服务技术分享--存储指南

    完整代码示例) 一、存储功能速览 HarmonyOS存储就像个随身U盘,能帮咱们把应用数据安全存到云端。特别适合处理用户头像、游戏存档、音视频文件等场景。它的三大优势: 自动同步:
    发表于 05-22 19:17

    HarmonyOS5服务技术分享--ArkTS调用函数

    。这种方式既保证了业务逻辑的灵活性,又能享受华为服务稳定保障。建议大家根据实际需求调整超时时间和认证策略~ 遇到问题别担心!欢迎在评论区留言讨论,或者到
    发表于 05-22 18:22

    HarmonyOS5服务技术分享--ArkTS开发Node环境

    气的方式探索这个功能,结尾还有实用总结和鼓励彩蛋哦~✨ ? 一、HarmonyOS函数开发:核心能力与价值 HarmonyOS的函数(Serverless)为开发者提供了​​无服务器架构​​的便捷
    发表于 05-22 17:21

    HarmonyOS5服务技术分享--自有账号对接AGC认证

    信等) ​​数据安全访问​​:通过AGC的安全规则,保护用户在数据库、存储等Serverless服务中的数据 ​​统一身份管理​​:无论
    发表于 05-22 16:32