华为云代码仓库(华为云库在哪)

admin 145 2023-01-09

阿里云服务器优惠多,折扣错,惊喜多,请咨询:www.wqiis.com

本文目录一览:

为何Google、微软、华为将亿级源代码放一个仓库?

作者 | 夕颜

编辑 | Just

出品 | AI 科技 大本营(ID:rgznai100)

大公司应该如何进行代码管理?微软研发并采用 VFS For Git 的过程和这个系统本身有哪些可以借鉴的地方?为了更深入了解 VFS For Git 和代码管理相关问题,AI 科技 大本营(ID:rgznai100)采访了微软亚洲研究院首席研发经理邹欣,他对这些问题进行了解答。

为什么要做 VFS For Git?

邹欣回忆,在将代码迁移到 GVFS 前,微软曾使用多个主要的代码管理平台,包括 SLM, Source Depot (上世纪 90 年代开始)、TFS 的源代码控制 TFVC (2006 年开始)。直到 2017 年,微软用三个月的时间完成代码迁移到 Git,并推出了 Git 的变种,针对特大 repo 的 GVFS,并沿用至今。

GVFS 是一个 Git 虚拟文件系统,全称为 Git Virtual File System,允许 Git 处理 TB 规模的代码库,比如 270 GB 的 Windows 代码库。GVFS 的 V 就是 Virtual(虚拟),它解决了Git 原来的设计缺陷(每个客户端都有所有版本的代码),而是用虚拟文件来代替那些本地用不着的文件, 大大 减少了文件传输和本地机器存储的压力,让微软内部技术人员可以进行高效协作。

一段小插曲是,GVFS 从发布之初就引起了争议,原因是 GNOME 项目的虚拟文件系统也叫 GVfs,而 GNOME 的 GVfs 最早发布于 2006 年,之后的教程、文档、论坛都沿用这个名字。在微软的 GVfs 项目发布后,很快超过了 Gnome GVfs 项目的搜索排名,且由于二者都与虚拟文件系统有关,导致用户在查找信息时容易出现混淆。于是,很多开发者要求微软改名,经过一番周折后,微软终于在 2018 年将 "GVFS" 项目的名字改为 "VFS For Git"。

邹欣表示,当时微软将代码迁移到 Git 主要是为了统一微软百花齐放的内部工具,并没有一个绝对好的选择,领导团队选择了 Git, 但从现在的结果来看,这是一个比较好的选择。如今,微软仍然在对 Git 系列的工具做改进,也把改进回馈到 Git 社区。

现在,VFS For Git 已经是微软内部统一的工具,同时被其他大型企业采用:

VFS For Git 在 GitHub 上也已开源:

GitHub开源地址: .com /microsoft/VFSForGit

除了微软,我们发现,很多大公司的代码托管已经向自己内部开发的版本控制系统迁移,比如 Google 就把使用不同语言编写的超过 10 亿文件,近百 TB 源代码都存放在自行开发的版本管理系统 Piper 中,只当项目开源且需要外部协作时,才会使用业界流行的 Git。(详见文章《为何Google将几十亿行源代码放在一个仓库?》)

再如华为的内源(Inner Source)平台,承载着华为 1100 亿源代码、60 万+ 代码仓库、每天 60 T 的下载容量、1 万次/秒的 高峰 并发下载。

这是否说明在大公司中流行的单一仓库就是最好的做法? 这些公司在选择采用代码托管方式时需要考虑哪些不同的问题?

邹欣解释,在他看来,用 GVFS 也可以创建各种独立的仓库。用一套工具有利于公司内部进行代码共享,让人员流动、代码复审、改进工具变得更简单,效率提高。

其次,大公司有很大量的代码,很长的 历史 和很多工具,如果贸然选择一个新工具就会出现以下问题:

a) 一些市面上的工具并不是为大规模代码设计的,处理不了大量代码, 我们以前用第三方的代码分析工具, 结果处理 Office 的代码的时候,自己崩溃了,因为 Office 的代码量太大,这个工具的开发者没有为如此大的代码设计软件。

b) 很多工具在 历史 中不断演化, 有自己独特的特点,很多和企业内部的某些特殊需求有关,外部工具很难都实现这样的功能。

很多工具联合在一起,会形成了一个工具的生态,但如果只改变一个工具,让其他的工具变得不兼容, 那整个团队的很多工作流就会出现问题。

此外,邹欣表示,代码托管与 AI 结合是未来发展方向。例如,这种结合会告诉你昨天晚上签入代码有问题, 或者签入代码和某个其他团队的代码相似,建议重用。或者告诉你签入的代码是从网上拷贝来的, 而且把原来代码中的 bug 也拷贝过来了。

最后,AI 科技 大本营引用此前微软云开发服务副总裁 Brian Harry 于 2017 年发表的一篇博文内容,在微软推出 VFS For Git 三个月后,他分享了该平台的更多细节及其未来目标,包括扩大开放源代码并改善其在 Microsoft 上的运行表现,想要了解 VFS For Git 更详细的信息,不妨仔细研读一下这篇文章:

每日检出量

.com /bharry/the-largest-git-repo-on-the-planet/

华为开发云 中的代码仓库 是什么意思

通俗点就是把自己需要存储的东西放到华为官方的服务器上。经过云计算帮你合理的保存和取用。希望能帮到你。

华为云配置管理新建分支的方法有哪些?

在华为云官网上有专业的文档耶,新建分支的话,你可以先进入远程仓库登录代码仓库页面,单击远程仓库左侧导航区“提交”选择“分支”页签,新建分支就可以啦

如何进行华为云配置管理?

这就是华为云专业的地方了。进入华为云配置管理页面后,配置管理代码仓库的两种基本使用流程:ssh方式主要涉及安装git客户端,生成密钥,新建仓库,拉取代码和云端托管等

如何在华为云软件开发云上搭建JavaWeb Ant

1.代码仓库

华为云软件开发云的代码仓库功能是基于Git的代码托管仓库,可提供文件在线编辑,仓库提交记录,代码贡献度统计等多种功能,满足各类开发者的需求。

2.编译构建

编译构建俗称打包,是指将软件源码编译成目标文件,并将目标文件和必要的文档制作成软件包的过程。

针对JavaWeb项目,华为云软件开发云提供了Maven构建和Ant构建两种构建方式。本文将选择Ant对项目进行构建。

具体操作:选择java语言,构建类型选择Ant。归档位置填写IDE中生成的war包路径及名称。

3.发布

我们的EShop.war已经以EShop的包名上传到发布仓库中。

4.部署

部署任务分为五部分:添加主机,选择部署脚本,选择发布软件包,填写验证路径,执行部署。

添加主机 填写主机相关信息,包括公网ip,用户名,密码。使用的是linux主机,window系统请更改主机类型,填写相关信息。

添加完主机之后,我们可以开始编写部署脚本。软件开发云提供了三种部署方法:shell部署,docker部署,Ansible部署。

Ansible部署可以自己填写部署脚本,也可以使用系统提供的部署脚本,本文直接选择系统默认的tomcat部署。

部署playbook选择完毕,选择软件构建包,上文我们在发布仓库中已经保存了构建包,我们在部署时可以直接使用。如果未在华为云软件开发云中使用编译构建功能,也可以从本地将构建包上传至发布仓库,选择,部署。

验证路径,就是主机的ip,端口,再加上选择的软件包名称。

完成任务配置之后,点击开始部署,就可以开始执行部署任务了。

上一篇:阿里云隐私号(阿里云隐私号申请)
下一篇:华为云储存在哪里(华为的云储存在哪里)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~