> For the complete documentation index, see [llms.txt](https://guides-ones.gitbook.io/guides/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://guides-ones.gitbook.io/guides/usage-guide/ones-pipeline/pipeline-xb/dai-ma-guan-lian-ji-cheng/si-you-gitlab.md).

# 私有 GitLab

### 通过代码关联集成私有 GitLab，将代码提交和 Project 模块结合使用。

### 1 配置代码关联集成

#### 1.1 新建关联代码仓

{% hint style="info" %}

1. **关联私有 GitLab 前，请确保 ONES 系统和贵司 GitLab 网络能互联互通。**
2. 私有 GitLab 版本最低支持 11.11.x，推荐使用 12.4.x。其他版本可能存在兼容性问题，例如导致系统无法自动配置代码仓的 Webhook，需要你手工在代码仓中配置
   {% endhint %}

前往 Pipeline 配置中心的代码仓管理页面，点击「新建关联代码仓」以关联当前团队所需私有 GitLab 代码仓。

![](/files/-MIDl0PdebbWQ-Ld_t2r)

通过 OAuth 的方式认证私有 GitLab，以便系统能获取自动配置代码仓 Webhook 的权限。

* 如果未认证过私有 GitLab，请点击「新建认证」按钮。认证私有 GitLab 需要先在 GitLab 中新建 Application，然后在 ONES 填入信息并确认认证。
* 如果你已认证过私有 GitLab，但想修改认证帐号，可以点击弹窗中的「重新认证」。

![](/files/-MIDlRQpw1F0iYO0JAqz)

![](/files/-MCGixHy4lX1X_Cg2bY1)

![](/files/-MCGjakCPl8bxMHxOuIU)

OAuth 认证成功后，你需要选择代码仓并完成新建关联代码仓。&#x20;

{% hint style="info" %}

1. 目前系统最多能获取到私有 GitLab 的 100 个代码仓。如果希望关联 100 以上个代码仓，你需要将代码仓划分到不同的私有 GitLab 帐号中进行关联。
2. 如果希望关联多个私有 GitLab 服务器，你需要联系不同的 ONES 用户分开进行认证和关联。
3. 操作关联的用户在私有 GitHub 中至少具有「Maintainor」权限，否则系统无权限自动配置代码仓的 Webhook，你需要手工配置。
   {% endhint %}

新建关联代码仓后，系统会自动在代码仓中配置 Webhook。你可以在代码仓详情中检查 Webhook 的配置状态。

![](/files/-MCGfzfOqgQg3cpspB5q)

![](/files/-MCGg6MWwETDXtfnIlet)

#### 1.2 重置 Webhook

Webhook 用于允许 ONES 监听代码平台上的特定提交事件。新建关联代码仓后，你可以通过以下方式重新配置 Webhook。

* 系统自动重置 Webhook 如果 Webhook 失效或被人为删除，你可以点击「重置 Webhook」按钮，系统会自动重置代码仓中的 Webhook。
* 手工配置 Webhook 点击「手工配置 Webhook」按钮，你可以查看当前代码仓的 Webhook 的配置信息，再进入 Git 平台中手工添加 Webhook。

![](/files/-MCGhqa36UZZJS02E3x3)

![](/files/-MCGhONlri2FhSpfhLOe)

#### 1.3 移除关联代码仓

如果不需要再获取某代码仓的代码提交数据，你可以移除关联此代码仓。 移除关联代码仓不影响历史已获取的代码提交数据。

![](/files/-MCGdJqO-NX-SjiTsLP0)

### 2 代码提交关联工作项

团队成员可以在代码提交 (commit message) 的时候通过输入包含工作项 ID 的方式和工作项进行关联。 目前一次代码提交支持与多个工作项同时进行绑定，请在多个工作项 ID 之间添加空格作为分隔，例如“#1 工作项一  #2 工作项二”。

### 3 查看代码关联结果

需求自动关联代码提交及其触发的持续集成数据，以便代码提交数据与项目管理结合。你可以在工作项详情的“代码关联”栏位查看代码关联结果。

![](/files/-MCGe-TcBsa4L7tq9U9b)

迭代支持汇总需求已关联的代码提交数据，迭代负责人可以据此跟进开发进展。

![](/files/-MCGe1L38EAMExmgR-_B)

迭代概览下将汇总统计当前迭代的代码提交情况，帮助迭代负责人评估开发贡献量。 目前支持统计和分析代码提交次数、代码提交次数趋势、代码提交影响行数的情况。

![](/files/-MCGaN6bVlIsUeZ6WG71)
