> ## Documentation Index
> Fetch the complete documentation index at: https://docs.fetchhive.com/llms.txt
> Use this file to discover all available pages before exploring further.

# GitLab

> GitLab 帮你通过已连接的账户管理仓库、问题、合并请求和 CI/CD 流水线。

# GitLab

当你的工作流需要读取或修改项目、问题、合并请求、仓库文件或流水线时，可以使用 GitLab。若后续步骤能提供项目 ID、问题 IID、分支名称、SHA 或作业 ID，它会很好用。

## 配置

| 选项 | 必需 | 说明 |
| - | - | - |
| 名称 | 否 | 工作流画布中此步骤的标签。 |
| 身份验证 | 是 | 供此步骤使用的已连接 GitLab 账户。 |
| 操作 | 是 | 要执行的 GitLab 操作（例如 Get Current User、Get Project、List Projects、Create Project）。 |
| 参数 | 是 | 根据操作的架构生成的各个操作表单字段。每个文本字段都有一个 **Insert Variable** 按钮，用于注入 `{{placeholder}}` 值。高级用法可使用 **Raw JSON** 选项卡。 |
| 步骤失败时 | 否 | 控制此步骤失败时工作流应 **Terminate Workflow** 还是 **Continue**。 |

在配置此步骤之前，请先使用登录流程在工作区的 **Integrations** 中连接 GitLab。如果没有可用的有效连接，步骤会显示警告，并提供指向 **Integrations** 的链接，而不是账户选择器。

## 参数表单

当你选择某个操作时，**Arguments** 部分会根据该操作的输入架构渲染一个表单。引用现有记录的字段包含下拉选择器。

如果你更喜欢手动编写完整的参数对象，请切换到 **Raw JSON** 选项卡。两个选项卡中的更改会保持同步。

## 常用操作

| 操作 | 说明 |
| - | - |
| **Get Current User** | 检索已连接的 GitLab 用户账户。 |
| **Get Project** | 通过 ID 或路径检索项目。 |
| **List Projects** | 列出已连接用户可访问的项目。 |
| **Create Project** | 创建一个新的 GitLab 项目。 |
| **List Project Issues** | 按筛选条件列出某个项目的问题。 |
| **Create Project Issue** | 在项目中创建一个新问题。 |
| **Update Project Issue** | 更新项目中的现有问题。 |
| **Get MR Approvals** | 检索合并请求的审批状态。 |
| **Get Merge Request** | 检索合并请求的详细信息。 |
| **List Merge Requests** | 列出所有可访问项目中的合并请求。 |
| **List Pipeline Jobs** | 列出流水线中的作业。 |
| **Get Job Details** | 检索 CI/CD 作业的详细信息。 |
| **Cancel Job** | 取消正在运行的 CI/CD 作业。 |

删除记录等破坏性操作在工作流操作选择器中不可用。

## 输出

此步骤会将 GitLab 响应存储为步骤输出。响应的结构取决于操作。

在后续步骤中使用完整的输出引用：

```text theme={null}
{{STEP_IDENTIFIER.output}}
```

## 示例

1. 打开 **Integrations**，如果你还没有这样做过，就连接 GitLab。
2. 在工作流中添加一个 **GitLab** 步骤。
3. 在 **Authentication** 中选择一个已连接账户。
4. 在 **Action** 中选择 **Get Current User**。
5. 填写所需字段。对任何字段值使用 **Insert Variable** 来引用前一步的输出。
6. 点击步骤标题栏中的 **Run** 来测试该操作，然后在 **Output** 中查看返回的载荷。

## 使用场景

### 从表单创建问题

1. Get Current User
2. Get Project
3. Create Project Issue

### 审查合并请求

1. List Merge Requests
2. Get Merge Request
3. Get MR Approvals

### 更新代码并运行 CI

1. Get Repository File
2. Update Repository File
3. Create Pipeline
4. List Pipeline Jobs

## 备注

* 此步骤依赖于工作区中已连接的 GitLab 集成。
* 工作流操作选择器会显示一组精选操作。拥有 GitLab 工具的代理可以使用更多操作。
* 登录界面可能会显示第三方授权品牌标识。

## 将 GitLab 用作代理工具

你也可以在 **Agent Editor** 中将 GitLab 添加为工具。打开代理，点击 **Add tool**，然后选择 **GitLab**。在工具设置面板中，选择代理应使用的已连接账户。相关时，代理会调用 GitLab 操作。

另请参阅：[Integrations](https://docs.fetchhive.com/zh/workspace/integrations.md)、[Creating and Editing](https://docs.fetchhive.com/zh/workflows/creating-and-editing.md) 和 [Testing and Iteration](https://docs.fetchhive.com/zh/workflows/testing-and-iteration.md)


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.