Help us learn about your current experience with the documentation. Take the survey.
仓库子模块 API
- Tier: Free, Premium, Ultimate
- Offering: GitLab.com, GitLab Self-Managed, GitLab Dedicated
使用此 API 更新 Git 仓库特定分支中的 Git 子模块 引用。
更新仓库中的现有子模块引用
在某些工作流中,特别是自动化工作流中,您可以更新子模块的引用,以保持使用该模块的其他项目为最新状态。
PUT /projects/:id/repository/submodules/:submodule| 属性 | 类型 | 必需 | 描述 |
|---|---|---|---|
id |
integer/string | 是 | 项目 ID 或 URL 编码的项目路径 |
submodule |
string | 是 | 子模块的 URL 编码完整路径。例如,lib%2Fclass%2Erb |
branch |
string | 是 | 要提交到的分支名称 |
commit_sha |
string | 是 | 要更新到的完整提交 SHA |
commit_message |
string | 否 | 提交信息。如果未提供信息,将设置默认信息 |
curl --request PUT \
--header "PRIVATE-TOKEN: <your_access_token>" \
--url "https://gitlab.example.com/api/v4/projects/5/repository/submodules/lib%2Fmodules%2Fexample" \
--data "branch=main&commit_sha=3ddec28ea23acc5caa5d8331a6ecb2a65fc03e88&commit_message=Update submodule reference"示例响应:
{
"id": "ed899a2f4b50b4370feeea94676502b42383c746",
"short_id": "ed899a2f4b5",
"title": "Updated submodule example_submodule with oid 3ddec28ea23acc5caa5d8331a6ecb2a65fc03e88",
"author_name": "Dmitriy Zaporozhets",
"author_email": "[email protected]",
"committer_name": "Dmitriy Zaporozhets",
"committer_email": "[email protected]",
"created_at": "2018-09-20T09:26:24.000-07:00",
"message": "Updated submodule example_submodule with oid 3ddec28ea23acc5caa5d8331a6ecb2a65fc03e88",
"parent_ids": [
"ae1d9fb46aa2b07ee9836d49862ec4e2c46fbbba"
],
"committed_date": "2018-09-20T09:26:24.000-07:00",
"authored_date": "2018-09-20T09:26:24.000-07:00",
"status": null
}