GitLab 提供了一个 REST API,允许你通过编程方式与 GitLab 项目、问题、合并请求等进行交互。要使用 GitLab API,你需要遵循以下步骤:
获取访问令牌: 为了安全地使用 API,你需要一个访问令牌。你可以在 GitLab 的用户设置中的“访问令牌”部分创建一个新的令牌。
了解 API 基础:
GitLab API 的基本 URL 是 https://gitlab.com/api/v4。你可以在此基础 URL 上添加资源路径来访问不同的功能。
使用 API:
你可以使用任何支持 HTTP 请求的工具或库来与 GitLab API 交互,例如 curl、Python 的 requests 库等。
以下是一些使用 curl 的基本示例:
获取项目列表:
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.com/api/v4/projects"
获取特定项目的详细信息:
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.com/api/v4/projects/<project_id>"
创建一个新的问题:
curl --request POST --header "PRIVATE-TOKEN: <your_access_token>" \
--form "title=New Issue" \
--form "description=This is a new issue" \
"https://gitlab.com/api/v4/projects/<project_id>/issues"
列出项目中的所有合并请求:
curl --header "PRIVATE-TOKEN: <your_access_token>" "https://gitlab.com/api/v4/projects/<project_id>/merge_requests"
关闭一个合并请求:
curl --request PUT --header "PRIVATE-TOKEN: <your_access_token>" \
--form "state=closed" \
"https://gitlab.com/api/v4/projects/<project_id>/merge_requests/<merge_request_iid>"
请确保将 <your_access_token> 替换为你的实际访问令牌,将 <project_id> 替换为项目 ID,将 <merge_request_iid> 替换为合并请求的内部 ID。
在使用 API 时,请注意以下几点:
per_page 参数来控制每页的对象数量,并通过 page 参数来指定页码。更多关于 GitLab API 的信息和可用端点的详细文档可以在 GitLab 官方文档中找到:https://docs.gitlab.com/ee/api/