Git概述
从狭义上来说,版本控制系统是软件项目开发过程中管理代码所有修订版本的软件,能够存储、追踪文件的修改历史,记录多个版本的开发和维护,事实上我们可以将任何对项目有帮助的文档交付版本控制系统进行管理。版本控制系统(Version Control Systems)主要分为两类,集中式和分布式。
版本控制系统
集中式版本控制系统
集中式版本控制系统的特点是只有一台中央服务器,存放着所有研发数据,而其它客户端机器上保存的是中央服务器最新版本的文件快照,不包括项目文件的变更历史。所以,每个相关人员工作开始前,都需要从这台中央服务器同步最新版本,才能开始工作
常见的集中式版本控制系统为CVS、VSS、SVN、ClearCase。
集中式版本控制系统的优点与缺点如下:
优点
|
缺点
|
---|---|
操作简单,使用没有难度,可轻松上手。 文件夹级权限控制,权限控制粒度小。 对客户端配置要求不高,无需存储全套代码。 |
网络环境要求高,相关人员必须联网才能工作。 中央服务器的单点故障影响全局,如果服务器宕机,所有人都无法工作。 中央服务器在没有备份的情况下,磁盘一旦被损坏,将丢失所有数据。 |
分布式版本控制系统
分布式版本控制系统的特点是每个客户端都是代码仓库的完整镜像,包括项目文件的变更历史。所有数据分布的存储在每个客户端,不存在中央服务器。可能有人会问,我们公司使用Git分布式存储工具,也有“中央服务器”啊?其实,这个所谓的“中央服务器”仅仅是用来方便管理多人协作,任何一台客户端都可以胜任它的工作,它和所有客户端没有本质区别。
常见的分布式版本控制系统为Git、Mercurial、Bazaar、Bitkeeper。
分布式版本控制系统的优点与缺点如下
优点
|
缺点
|
---|---|
版本库本地化,版本库的完整克隆,包括标签、分支、版本记录等。 支持离线提交,适合跨地域协同开发。 分支切换快速高效,创建和销毁分支廉价。 |
学习成本高,不容易上手。 只能针对整个仓库创建分支,无法根据目录建立层次性的分支。 |
代码托管服务云端操作
云端仓库功能
云端仓库功能支持新建仓库、仓库克隆、分支管理、标签管理、提交代码、拉取代码、推送代码、代码阅读、在线修改、仓库成员管理、密钥管理等。
新建空仓库
1、在目标项目下的代码托管服务中,单击“普通新建”按钮。
2、填写仓库的基本信息。
3、单击“确定”按钮,完成仓库新建,跳转到仓库列表。
设置SSH密钥/HTTPS密码
后续需要在本地客户端进行代码仓库的克隆/推送,SSH密钥和HTTPS密码是客户端和服务端交互的凭证,需要先对它们进行设置。
设置SSH密钥
SSH密钥是使用SSH协议和代码托管服务端交互的凭证,如果您使用windows下的Git Bash客户端并在其中已经生成,此步骤可以略过。
1、打开Git客户端(Git Bash或linux的命令行窗口),输入以下命令行:ssh-keygen -t rsa -C "<您的邮箱>",然后输入3个回车(Enter键)即可,生成的SSH秘钥对默认在“~/.ssh/id_rsa、~/.ssh/id_rsa.pub”位置。
2、添加SSH密钥到代码托管服务端:
打开Git客户端(Git Bash或linux的命令行窗口),将SSH密钥“~/.ssh/id_rsa.pub”的内容打印出来。
3、复制上述的SSH密钥内容,登录您的代码托管服务仓库列表页,单击右上角昵称,单击“个人设置 > SSH密钥管理”,进入页面。
4、在“SSH密钥管理”页面,单击“添加SSH密钥”,弹出“添加SSH密钥”页面,填写下图中信息,单击“确定”,页面会提示您操作成功。
设置HTTPS密码
HTTPS密码是使用HTTPS协议和代码托管服务端交互的凭证,设置步骤如下:
1、登录您的代码托管服务仓库列表页,单击右上角昵称,单击“个人设置 > HTTPS密钥管理”,进入页面。
2、单击“自行设置密码”,再单击“修改”进入“重设密码”页面。(如果您之前自主设置过HTTPS密码并正在使用,直接单击“修改”)。
3、填写新密码与邮箱验证码,勾选“我已阅读并同意 《隐私政策声明》 和 《CodeArts服务使用声明》”,单击“保存”,页面会提示您操作成功。
Git本地研发场景
背景介绍
CodeArts Repo现有迁仓能力只支持公网之间迁移,缺少客户内网自建代码托管平台往Repo迁移的快速方案,因此提供批量迁移内网代码托管平台仓库到Repo的脚本。
代码托管服务常见问题
代码托管服务常见问题
代码托管服务精选推荐
1对1咨询专属顾问
华为云咨询电话:950808或4000-955-988 转1
华为云咨询电话:950808或4000-955-988 转1