新手指引
如果您是初次接触Git,可以前往基于Git的代码托管入门了解Git与代码托管服务的工作原理。
如果您有基于Git进行版本管理的经验,下面将快速帮您了解代码托管服务的功能。
新建一个仓库
下面以创建模板仓库为例。
- 进入目标项目下的代码托管服务。
- 单击“普通新建”旁的图标,在扩展框中选择“按模板新建”,跳转到“选择模板”页面。
- “选择模板”页面支持模糊查询,根据您的需求选中某个模板。
- 单击“下一步”按钮,进入“基本信息”页面,填写仓库基本信息。
表1 按模板新建仓库的参数说明 字段名称
是否必填
备注说明
代码仓库名称
是
以字母、数字、下划线开头,名称还可包含点和连字符,但不能以.git、.atom或.结尾,限制200字符。
归属项目
是
- 仓库必须存在项目下。
- 如果帐号下没有项目或者在项目选择框中选择“新建项目”会弹出“新建项目”页面,这时建立的项目是basic项目。
(basic项目,只有代码托管、代码检查功能,其它功能都不开通也不显示,需要手动去项目设置页更改才能变成基础项目)。
说明:如果在项目内新建仓库则默认选择该项目,页面会隐去“归属项目”这个字段。
描述
否
为您的仓库填写描述。
权限设置
否
- 将项目开发人员自动添加为该仓库成员。
选择后会自动将项目中的项目经理设为仓库管理员,开发人员设为仓库普通成员。当项目新增这两个角色时,会自动将新增成员同步到代码仓成员中,可通过成员列表查看。
是否公开
是
可选择:
- 私有。
仓库仅对仓库成员可见,仓库成员可访问仓库或者提交代码。
- 公开只读。
仓库对所有访客公开只读,但不出现在访客的仓库列表及搜索中,可以选择添加开源许可证作为备注。
- 单击“确定”按钮,完成仓库的新建并返回仓库列表。
您已新建了一个仓库,去新建一个分支吧!
新建一个分支
分支是版本管理工具中最常用的一种管理手段,使用分支可以把项目开发中的几项工作彼此隔离开来使其互不影响,当需要发布版本之前再通过分支合并将其进行整合。
- 单击仓库名称进入仓库详情。
- 切换到“代码”页签下的“分支”子页签,在这里可以看到目前仓库中的分支列表。
- 单击“新建分支”按钮,在弹出的窗口中选择要基于哪个版本(分支或标签)进行创建,填写新分支的名称,并且可关联现有工作项。
表2 参数说明 名称
是否必填
备注说明
基于
是
基于已有某个分支或标签进行新建分支。
分支名称
是
新建分支的名称。
描述
否
针对于新建的分支的描述。
关联工作项
否
支持关联工作项
- 单击“确定”按钮,即可完成分支的新建并返回分支列表。
您已新建了一个分支,去新建一个文件吧!
新建一个文件
- 单击仓库名称进入仓库详情。
- 鼠标停留在文件夹名称处,单击显示的图标或单击图标,单击“新建文件”。
- 根据情况填写以下参数。
表3 参数说明 名称
是否必填
备注说明
文件名称
是
新建文件的名称。
空白文件(不使用模板)
是
支持选择多种模板类型,默认选择空白文件(不使用模板)。
text/base64
是
支持text与base64编码类型,默认text编码类型。
文件内容
否
新建文件的内容。
提交信息
是
自动同步【新建文件 您的文件名称】,支持自定义内容,可关联工作项。
- 单击“确定”按钮,即可完成文件的新建并返回文件列表。
您已新建了一个文件,接下来您可以对两个分支新建一个合并请求了!
新建一个合并请求
代码托管服务支持多分支开发,并为分支合并建立了可配置的审核规则,当一个开发者发起一次合并请求时,可选择部分仓库成员参与到代码审视中,以确保合并代码的正确性。
- 单击仓库名称进入仓库详情。
- 切换到“合并请求”页签,单击“新建”按钮,选择要合并的分支。
- 单击“下一步”按钮,此时系统会检测两条分支是否有差异。
- 如果分支没有差异,系统会做出提示,且不能新建合并请求。
- 如果分支存在差异,则进入如下“新建合并请求”页面。
在“新建合并请求”页面的下方可以看到两条分支的文件差异对比详情、要合并分支的提交记录。
- 根据下表参数说明,填写页面信息。
表4 参数说明 参数
说明
更改分支
单击可返回上一步更改需要合并的分支。
标题
输入合并请求的标题。
描述
会结合分支合并情况与要合并分支的提交(commit)备注生成默认值,您可以根据项目情况进行修改。
关联工作项
可选择将合并动作关联到某个工作项,以起到自动改变工作项状态的作用。
合并人
在合并请求满足合入要求时,一般是所有审核人审核通过、所有问题都被解决(可设置不解决也能合并),合并人有权限执行合并操作(单击按钮)、也有权限关闭合并请求。
检视人
被指定参与合并分支检视,可以提出问题给发起人。
评审人
被指定参与合并分支评审,可以给出审核意见(审核通过、拒绝),也可以提出问题给发起人。
合并后删除源分支
可选择是否合并后删除源分支,初始会带入合并请求设置中预设状态。
Squash 合并
Squash合并是将合并请求的所有变更提交信息合并为一个,并保留干净的历史记录。当用户在处理功能分支只关注当前提交进度,而不关注提交信息时,可使用squash merge。
开启Squash合并,可使基本分支的历史记录保持干净,并带有有意义的提交消息,而且在必要时可以更简单地恢复。
- 单击“新建合并请求”按钮,可以完成合并请求的提交,页面会跳转到该“合并请求详情页”。
合入一个合并请求
- 单击仓库名称进入仓库详情。
- 切换到“合并请求”页签,单击目标合并请求名称,进入合并请求详情页。
- 检视人、审核人对合并请求进行检视、审核操作。
表5 合入条件说明 合入条件
说明
代码合并冲突
当源分支代码与目标分支代码产生合并冲突时,需要先解决冲突才可进行下一步操作,解决代码冲突可参考解决合并请求的代码冲突。
评审意见门禁
当发起人解决所有检视人或审核人的评审意见后,门禁显示通过。
说明:需要在“设置 > 策略设置 > 合并请求”中勾选“评审问题全部解决才能合入”后,门禁功能生效。
流水线门禁
当最新commit或者预合并commit拉起并执行成功pipeline时,门禁显示通过,解决方案详见配置流水线。
E2E单号未关联
当合并请求关联工作项后,门禁显示通过。
说明:需要在“设置 > 策略设置 > 合并请求”中勾选“必须与CodeArts Req关联”后,门禁功能生效。
检视门禁
当已检视的检视人数达到最小检视人数时,门禁显示通过。
审核门禁
当已审核的审核人数达到最小审核人数时,门禁显示通过。
- 当发起人通过以上合入条件后,合并人单击页面右上角“合入”按钮进行合入,反之,合并人可单击“关闭”将请求关闭。
您已经学完了新手教程,去探索一下更多的功能吧!