
# 查询某个仓库的提交信息
#### 功能介绍
用户可根据仓库ID获取提交信息，也可以根据文件路径查询该路径下的所有提交记录。
#### 调试
您可以在[API Explorer](https://console.huaweicloud.com/apiexplorer/#/openapi/CodeHub/doc?api=ListCommits)中调试该接口，支持自动认证鉴权。API Explorer可以自动生成SDK代码示例，并提供SDK代码示例调试功能。
#### URI
GET /v2/projects/{repo_id}/repository/commits
表1路径参数 
| 参数      | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| repo_id | 是    | Integer | **参数解释：** 仓库ID，进入仓库的"代码"页面，仓库名称下的"Repository ID"即为仓库ID。 **约束限制：** 不涉及。 **取值范围：** 0-2147483647 **默认取值：** 不涉及。 |
   
表2Query参数 
| 参数         | 是否必选 | 参数类型    | 描述                                                                                                                                                                                                                                                                                                                                                                                                                     |
|:---|:---|:---|:---|
| ref_name   | 否    | String  | **参数解释：** 仓库的分支名或标签名，如果该参数为空，则查询默认分支。 **约束限制：** 不涉及。 **取值范围：** 最小长度：1 最大长度：200 **默认取值：** 默认分支。                                                               |
| since      | 否    | String  | **参数解释：** 表示查询在此日期之后提交的记录，格式YYYY-MM-DDTHH:MM:SSZ。 例如，2025-07-18T12:34:56Z表示2025年7月18日12点34分56秒的UTC时间。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。   |
| until      | 否    | String  | **参数解释：** 表示查询在此日期之前提交的记录，格式 YYYY-MM-DDTHH:MM:SSZ。 例如，2025-07-19T12:34:56Z表示2025年7月19日12点34分56秒的UTC时间。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。 |
| path       | 否    | String  | **参数解释：** 文件路径。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                         |
| all        | 否    | Boolean | **参数解释：** 是否检索仓库中的每个提交。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                                       |
| with_stats | 否    | Boolean | **参数解释：** 每个提交的统计信息是否要添加到响应中。 **约束限制：** 不涉及。 **取值范围：** 不涉及。 **默认取值：** 不涉及。                                                                                                       |
| page       | 否    | Integer | **参数解释：** 分页索引。 **约束限制：** 不涉及。 **取值范围：** 1-2147483647 **默认取值：** 1                                                                                                                        |
| per_page   | 否    | Integer | **参数解释：** 每页展示提交的条数。 **约束限制：** 不涉及。 **取值范围：** 1-100 **默认取值：** 100                                                                                                                          |
   
#### 请求参数
表3请求Header参数 
| 参数           | 是否必选 | 参数类型   | 描述                                                                                                                                                                                                                                                                                                                                                                                                                           |
|:---|:---|:---|:---|
| X-Auth-Token | 是    | String | **参数解释：** 用户Token。通过调用IAM服务[获取用户Token](https://support.huaweicloud.com/api-iam/iam_30_0001.html)接口获取（响应消息头中X-Subject-Token的值）。 **约束限制：** 不涉及。 **取值范围：** 字符串长度范围是\[1,100000\]。 **默认取值：** 不涉及。 |
   
#### 响应参数
**状态码： 200**
表4响应Body参数 
| 参数     | 参数类型                                                                                            | 描述                                                                                                                                                                                                                                                                                                                                        |
|:---|:---|:---|
| error  | [Error] object                     | **参数解释：** 响应错误。 **取值范围：** 不涉及                                                                                                                                                                                                               |
| result | Array of [CommitInfo] objects | **参数解释：** 响应结果。 **取值范围：** 不涉及                                                                                                                                                                                                             |
| status | String                                                                                          | **参数解释：** 调用此接口的响应状态。 **取值范围：** - success，表示接口调用成功。  - failed，表示接口调用失败。   |
   
 表5Error 
| 参数      | 参数类型   | 描述                                                                                                                                                 |
|:---|:---|:---|
| code    | String | **参数解释：** 错误码。 **取值范围：** 符合错误码格式字符串，长度\[0,100\]。 |
| message | String | **参数解释：** 错误信息。 **取值范围：** 不涉及。                    |
   
 表6CommitInfo 
| 参数              | 参数类型             | 描述                                                                                                                                                                                                                                              |
|:---|:---|:---|
| id              | String           | **参数解释：** 提交对应的SHA ID，即Git版本控制系统中用于唯一标识每个提交（commit）。 **取值范围：** 40                                                                              |
| short_id        | String           | **参数解释：** 提交对应的短SHA ID，即SHA ID的简写形式，通常是前几位。 **取值范围：** 8                                                                                          |
| title           | String           | **参数解释：** 用户在Git提交的标题。 **取值范围：** 不涉及。                                                                                                             |
| author_name     | String           | **参数解释：** 作者。 **取值范围：** 不涉及。                                                                                                                     |
| author_email    | String           | **参数解释：** 作者邮箱。 **取值范围：** 不涉及。                                                                                                                     |
| committer_name  | String           | **参数解释：** 提交者。 **取值范围：** 不涉及。                                                                                                                |
| committer_email | String           | **参数解释：** 提交者邮箱。 **取值范围：** 不涉及。                                                                                                                 |
| created_at      | String           | **参数解释：** 创建时间。 **取值范围：** 不涉及。                                                                                                                |
| message         | String           | **参数解释：** 提交信息，包含提交的目的和内容。 **取值范围：** 不涉及。                                                                                                      |
| parent_ids      | Array of strings | **参数解释：** 父提交ID（Parent Commit ID）。当创建一个新的提交时，Git会记录下这个新提交是从哪个提交演变而来的，这个前身提交就是"父提交"。 **取值范围：** 不涉及。                                           |
| committed_date  | String           | **参数解释：** 提交时间，格式为：YYYY-MM-DDTHH:MM:SSZ。 例如，2025-07-19T12:34:56Z表示2025年7月19日12点34分56秒的UTC时间。 **取值范围：** 不涉及。      |
| authored_date   | String           | **参数解释：** 作者提交时间，格式为：YYYY-MM-DDTHH:MM:SSZ。 例如，2025-07-19T12:34:56Z表示2025年7月19日12点34分56秒的UTC时间。 **取值范围：** 不涉及。 |
   
#### 请求示例
```
GET https://{endpoint}/v2/projects/859341/repository/commits
```
#### 响应示例
**状态码： 200**
OK
```
{
  "result" : [ {
    "id" : "85a0a9d5c6e43bc9c3e443ac01f789e24eeef02b",
    "title" : "some commit message",
    "message" : "some commit message",
    "short_id" : "85a0a9d5",
    "author_name" : "repo",
    "author_email" : null,
    "committer_name" : "repo",
    "committer_email" : null,
    "created_at" : "2021-09-26T03:44:51.000Z",
    "parent_ids" : [ "5c114bb316dff4d4a046e09a5c44c816f2433140" ],
    "committed_date" : "2021-09-26T03:44:51.000Z",
    "authored_date" : null
  }, {
    "id" : "5c114bb316dff4d4a046e09a5c44c816f2433140",
    "title" : "更新README.md",
    "message" : "更新README.md",
    "short_id" : "5c114bb3",
    "author_name" : "repo",
    "author_email" : null,
    "committer_name" : "repo",
    "committer_email" : null,
    "created_at" : "2021-08-26T12:02:58.000Z",
    "parent_ids" : [ "646fc72bd87eb02e1e84bf3b82179c7f6d22c2c2" ],
    "committed_date" : "2021-08-26T12:02:58.000Z",
    "authored_date" : null
  } ],
  "status" : "success"
}
```
#### 状态码
| 状态码 | 描述 |
|:---|:---|
| 200 | OK |
   
#### 错误码
请参见错误码。
