● 5.5 复刻(Fork)仓库
将本地项目迁移到云端
如果您本地正在开发一个项目,想使用代码托管服务来管理版本,那么您可以将本地 仓库绑定云端仓库并完成初始化推送,之后便可以使用分布式版本管理方式来继续开 发您的项目,其使用流程如下。
所涉及到的操作或知识如下:
● 5.2 创建空仓库
● 13.2 仓库成员管理
● 10 云端仓库管理
● 3 Git客户端安装配置
● 将本地仓库关联到云端
● 6 克隆/下载云端仓库到本地
● 12.1 分支管理
● 12.2 标签管理
● 11 提交代码到云端
● 12.3 分支合并评审
● 5.5 复刻(Fork)仓库
分布式版本管理
您的本地计算机与代码托管(CodeHub)中各有一个完整的代码仓库。
所有版本信息可同步到本地计算机,这样就可以在本地计算机查看所有版本历史。
可以离线在本地计算机提交,只需在连网时push到代码托管仓库即可。
由于每个用户那里保存的都是所有的版本数据,只要有一个用户的设备没有问题就可 以恢复所有的数据。
基本运行模式
代码托管(CodeHub)是基于Git的一种云端仓库服务,其遵循Git的工作模式。
● Git本地仓库中的数据有三种状态,分别是“已修改”、“已暂存”和“已提 交”。当您对仓库中的文件做出修改后,该文件状态为“已修改”,您可以通过 add命令将该修改追加到本地的暂存区,此时状态为“已暂存”,再通过commit 命令将修改提交到本地版本库进行管理,每次提交都会生成对应的版本和版本 号,通过版本号可以进行版本的切换、回滚。同一版本中还可以同时存在多个分 支、标签,每个分支、标签、每次提交又相当于独立的版本可以使用checkout进 行检出。
● 代码托管作为云端仓库服务(Remote),其除了具备Git本地仓库的基本特性 外,还作为各个本地仓库的远程版本库,并具备可配置的安全策略、权鉴等。
● 代码托管服务的云端仓库与Git本地仓交互的场景主要有以下四种:
– Clone:直接将远程仓库的主分支克隆到本地,作为本地仓库。
– Push:将本地仓库的修改推送到云端仓库。
– fetch:从云端仓库抓取版本到工作区。
– Pull:从云端仓库抓取版本到工作区并尝试与当前分支合并,如果失败,需要 手动解决文件冲突。
2 开通代码托管服务
开通场景
在DevCloud支持的区域内,各区域独立开通购买、独立计费。
2020年10月16日前,未在DevCloud某个区域下产生过费用的用户,按照新版计费规 则,需在该区域开通/购买DevCloud后才能使用软开相关服务。
在该区域内产生过费用的用户,延续旧版计费规则,可参考开通按需在该区域开通代 码托管(CodeHub)服务按需计费。
例如:
用户于2020年3月在“华北-北京四”购买了半年期的包月套餐。由于疫情影响业务,
套餐到期后关闭了DevCloud服务;2020年10月20日将重新启用DevCloud。
● 若用户仍使用华北-北京四,可以开通/购买旧版套餐,或单独开通代码托管服务 使用。
● 若用户使用其它区域,则需开通/购买DevCloud新版计费。
开通按需
代码托管服务开通按需计费后,将每小时统计使用量并计费,开通的操作步骤如下。
步骤1 登录DevCloud控制台,在左侧导航中选择“代码托管”,单击“开通按需”。
步骤2 查看并确认服务开通详情,阅读、勾选相关服务声明后,单击页面右下角“立即开 通”,在弹框中单击“确认”。
步骤3 页面右上角提示开通进行中,成功开通后系统自动返回控制台。
在“开通记录”页签可查看服务开通记录。
----结束
关闭服务
● 当您不再使用代码托管服务,由于存储空间及用户为按小时计费,为了避免浪费 资源,您可以关闭本服务。本服务关闭后,将不再产生费用,如果您需要再次使 用,请重新开通。
● 关闭服务会将您已有的仓库资源释放,您上传的代码将无法被恢复,请在对仓库 备份之后,慎重操作。
步骤1 登录DevCloud控制台,在左侧导航中单击“代码托管”。
步骤2 选择“开通记录”页签,单击操作列“关闭服务”
步骤3 在弹框中输入“关闭服务”,单击“确认”。
步骤4 页面提示“已成功取消代码托管服务”,开通记录状态显示为“已关闭”。
----结束
3 Git 客户端安装配置
3.1 Git客户端安装与配置 3.2 Windows Git Bash客户端 3.3 Windows TortoiseGit客户端 3.4 Linux Git客户端
3.5 Mac Git客户端
3.1 Git 客户端安装与配置
代码托管基于Git工具,开发人员的本地环境需要安装Git Bash或TortoiseGit等Git客户 端工具,实现与代码托管服务的连接。后续章节介绍Git Bash、TortoiseGit的安装与简 易配置,其中Git客户端支持在Windows、linux、mac操作系统中运行。
如果您已经安装过Git客户端并且已经配置了签名和邮箱,可跳过以下章节。
● 3.2 Windows Git Bash客户端
● 3.3 Windows TortoiseGit客户端
● 3.4 Linux Git客户端
● 3.5 Mac Git客户端 说明
代码托管暂不支持使用github desktop进行管理。
3.2 Windows Git Bash 客户端
如果您不熟悉Git命令,推荐使用3.3 Windows TortoiseGit客户端的可视化操作界 面,如果您熟悉常用的Git命令,Git Bash将会是您Windows上更加简洁、高效的客户 端。
1. 安装Git Bash客户端。
a. 打开Git Bash官网下载链接,根据您的操作系统位数下载32位/64位的安装 包。
b. 双击运行安装包,在弹出的安装窗口中依次单击“下一步(Next)”,最后 单击“安装(Install)”完成安装。
2. 打开Git Bash客户端。
单击Windows“开始”图标,在“开始”搜索栏中输入“Git Bash”,单击回车 即可打开Git Bash客户端,建议将其固定到Windows的任务栏中。
3. 配置Git Bash客户端。
配置用户名和邮箱,在Git Bash中输入以下命令行:
git config --global user.name "<您的用户名>"
git config --global user.email "<您的邮箱>"
配置好之后可以使用以下命令行查看配置:
git config -l 说明
● 用户名可以由字母、数字、常用符号组成,如为方便管理,可以考虑配置成与代码托管 服务相同的用户名;
● 邮箱请按照标准邮箱格式填写;
● git config命令的–global参数,用了这个参数,表示您这台机器上所有的Git仓库都会使 用这个配置,当然也可以对某个仓库指定不同的用户名和Email地址;
3.3 Windows TortoiseGit 客户端
如果您不熟悉常用的Git命令,或者是从熟悉的SVN客户端(TortoiseSVN)迁移过来 的,那么TortoiseGit客户端将是您更好的选择。Git中的TortoiseGit客户端相当于SVN 中的TortoiseSVN客户端。
前置条件
打开Git Bash官网下载链接,根据您的操作系统位数下载32位/64位的安装包,双击运 行安装包,在弹出的安装窗口中依次单击“下一步(Next)”,最后单击“安装
(Install)”完成安装。
安装与第一次启动
1. 打开TortoiseGit官网下载链接,根据您的操作系统位数下载32位/64位的安装 包。
2. 双击运行安装包,在弹出的窗口中依次单击“Next”,然后单击“Install”即可 完成安装,最后单击“Finish”即会运行第一次启动引导。
3. 在弹出的第一次启动引导中,会有Language语言选择、Git可执行路径配置(自 动填充可用的Git路径)、配置用户名和邮箱,保持默认依次单击Next完成即可。
语言包(可选)
TortoiseGit的安装包默认为英文,可以从TortoiseGit官网下载链接下载语言包
(Language Packs)。
这里选择Chinese simplified语言包,下载对应的32位/64位的语言包然后双击运行,
在完成之前勾选“Configure TortoiseGit to use this language”即可完成汉化。
配置
TortoiseGit同样需要一个密钥来和代码托管服务端进行鉴权认证,密钥生成步骤如 下:
1. 单击Windows开始图标搜索PuttyGen并打开,在打开的窗口中单击
“Generate”,即可生成密钥。
说明
PuTTYgen是TortoiseGit自带的一款功能强大并且小巧易用的公钥私钥生成工具软件,安 装完TortoiseGit后即可在Windows开始图标搜索到PuTTYgen。需要注意的是,TortoiseGit 与PuTTY都有自带PuTTYgen,是不会冲突的。
2. 密钥生成后就可以分别将公钥、私钥进行存储。
– 单击“Save private key”在弹出的窗口中输入文件名保存为私钥文件。
– 单击“Save public key”在弹出的窗口中输入文件名保存为公钥文件。
3. 将公钥绑定到云端仓库。
4. 将私钥绑定到本地客户端。
单击Windows开始图标搜索Pageant并打开,单击“Add Key”,并选择您生成的 私钥文件即可。
3.4 Linux Git 客户端
● Debian/Ubuntu系统
在终端中输入以下命令行安装:
apt-get install git
● Fedora/Centos/Redhat系统 在终端中输入以下命令行安装:
yum install git
● 更多操作系统请参见官网链接Download for Linux and Unix。
3.5 Mac Git 客户端
● Mac上安装Git最简单的方法是安装 Xcode Command Line Tools;
● 在Mavericks(10.9)或更高版本的系统中,于Terminal里尝试首次运行Git命令即 可,如果没有安装过命令行开发者工具,将会提示您安装;
● 如果您想安装更新的版本,可以使用二进制安装程序,官方维护的OSX Git 安装 程序可以在 Git 官方网站下载,网址为https://git-scm.com/download/mac。
4 设置 SSH 密钥/HTTPS 密码
4.1 概述 4.2 SSH密钥 4.3 HTTPS密码
4.1 概述
什么是 SSH 密钥/HTTPS 密码
当您需要将代码推送到云端仓库或从云端仓库下拉代码时,云端仓库需要验证您的身 份与权限,SSH和HTTPS是对代码托管服务进行远程访问的两种身份验证方式。
● 4.2 SSH密钥是在本地计算机与您账号下的代码托管服务之间建立安全连接。
在一台本地计算机上配置了SSH密钥并添加公钥到代码托管服务中后,所有该账 号下的代码仓库与该台计算机之间都可以使用该密钥进行连接。
不同的用户通常使用不同的电脑,在使用SSH方式连接代码仓库前需要在自己电 脑生成自己的SSH密钥,并设置到代码托管服务中。
● 4.3 HTTPS密码是HTTPS协议方式下载、上传时使用的用户凭证。
每个开发者,只需要设置一次密码,所有该项目下的仓库都会生效。
在本产品中,HTTPS协议所支持的单次推包大小为500M,需传输大于500M时,
请使用SSH方式。
因为联邦账号无法绑定邮箱,所以无法使用HTTPS协议。
说明
● 使用其中任何一种方式都可以进行代码的上传下载,密钥(密码)的设置根据您选择的连接 方式设定即可。
4.2 SSH 密钥
步骤1 安装3.2 Windows Git Bash客户端 步骤2 检查您的计算机是否已经生成了密钥。
在本地Git客户端中执行命令,尝试显示ssh密钥。
cat ~/.ssh/id_rsa.pub
● 如果提示“No such file or directory”如下图,则说明您这台计算机没有生成过 SSH密钥,请从步骤3向下执行以生成并配置SSH密钥。
● 如果提示“No such file or directory”如下图,则说明您这台计算机没有生成过 SSH密钥,请从步骤3向下执行以生成并配置SSH密钥。