# 日常代码评审(Commit Review)
如果使用 project_full_path,确保 project_full_path 编码过,例子:/api/v3/projects/tencent/code--> /api/v3/projects/tencent%2Fcode (/ 编码 %2F)
CR 评审状态值(review_state)说明:
approved:评审通过
approving:评审中
change_denied:评审被拒绝
change_required:代码要求修改
closed:被关闭了
# 新建 Commit 评审
在项目中新建一个 Commit 评审
审批人规则:
-1:所有评审人通过,1:单评审通过,2+:多评审通过 (用>=2 的数字代表需要几位必要评审人通过)。必要审批人规则:
-1:所有必要评审人通过,1:单必要评审通过,2+:多必要评审通过 (用>=2 的数字代表需要几位必要评审人通过),0: 不需要必要评审人即可通过。
POST /api/v3/projects/:id/review
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| title | string | 标题 |
| source_branch | string | 源分支名(默认选择该分支最新的提交点) |
| target_branch | string | 目标分支名(默认选择该分支最新的提交点) |
| target_project_id | integer(可选) | 目标项目 id |
| description | string(可选) | 描述 |
| source_commit | string(可选) | 源提交点 |
| target_commit | string(可选) | 目标提交点 |
| labels | string(可选) | 合并请求的标签,多个请用英文逗号分隔 |
| reviewer_ids | string(可选) | 评审人 id (只能是 id。多个评审人请用英文逗号分隔) |
| necessary_reviewer_ids | string(可选) | 必要评审人 id (只能是 id。多个评审人请用英文逗号分隔) |
| creator | string(可选) | 创建者英文名 |
| approver_rule | Integer(可选) | 评审人规则 |
| necessary_approver_rule | Integer(可选) | 必要评审人规则 |
| selected_files | ç (可选) | 传重点文件路径数组,参数为空时默认所有都是重点文件 |
返回值:
{
"labels": [],
"title": "api 新建",
"description": null,
"author": {
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
},
"reviewers": [],
"id": 276498,
"project_id": 9837556,
"reviewable_id": 105,
"reviewable_type": "comparison",
"state": "approving",
"approver_rule": 1 ,
"necessary_approver_rule": 0,
"push_reset_enabled": true,
"created_at": "2019-04-19T07:23:18+0000",
"updated_at": "2019-04-19T07:23:18+0000"
}
# 获取项目中的 Commit 评审
获取项目中所有的 Commit 评审
GET /api/v3/projects/:id/reviews
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| author_id | integer(可选) | 作者的 id |
| iids[] | array of integer(可选) | 项目里面的 review id 编号,使用时需转义. 如:iids[]=1&iids[]=2 --> iids%5B%5D=1&iids%5B%5D=2 |
| state | string(可选) | 评审状态,可选值:approving, approved change_required 或 closed,不填写或填写all返回所有的代码评审。 |
| labels | string(可选) | 合并请求的标签,多个请用英文逗号分隔 |
| order_by | string(可选) | 排序字段,允许按 created_at, updated_at 排序(默认 created_at) |
| sort | string(可选) | 排序方式,允许 asc or desc(默认 desc) |
| page | integer(可选) | 分页(默认值:1) |
| per_page | integer(可选) | 默认页面大小(默认值: 20,最大值: 100) |
返回值:
{
"labels": [],
"title": "创建差异",
"description": "创建差异",
"target_commit": "0d9a17c75a1a03e2b0e0392cbe8106510ca181b6",
"target_branch": "target_branch_001",
"target_project_id": 1070154,
"source_commit": "27ed316d45c0befe07b4e50e1aa069e7e27446a2",
"source_branch": "source_branch_001",
"source_project_id": 1070154,
"author": {
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
},
"reviewers": [
{
"type": "invite",
"review_state": "approving",
"review_duration": 212,
"created_at": "2019-09-25T02:41:11+0000",
"updated_at": "2019-09-25T02:41:11+0000",
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
}
],
"id": 27695,
"project_id": 98376,
"reviewable_id": 102,
"reviewable_type": "comparison",
"state": "approving",
"approver_rule": 1,
"necessary_approver_rule": 0,
"push_reset_enabled": true,
"created_at": "2019-04-18T09:23:51+0000",
"updated_at": "2019-04-18T09:23:51+0000"
}
# 获取项目中某个具体的 Commit 评审 (根据 id)
获取项目中某个具体的 Commit 评审情况。
GET /api/v3/projects/:id/review/:review_id
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
返回值:
{
"labels": [],
"title": "创建差异",
"description": "创建差异",
"commits": [
{
"id": "8a7f0548f9c18ce7e28ed8fb27ad700d44768362",
"commit_date": "2019-04-24T08:24:43+0000"
},
{
"id": "479f9d544f57fc571af9a88fb7e8dea1e56d899a",
"commit_date": "2019-04-18T07:34:52+0000"
}
],
"author": {
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
},
"reviewers": [
{
"type": "suggestion",
"review_state": "approving",
"review_duration": 0,
"created_at": "2019-08-16T09:16:57+0000",
"updated_at": "2019-08-16T09:56:28+0000",
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
}
],
"id": 276495,
"project_id": 9837556,
"reviewable_id": 102,
"reviewable_type": "comparison",
"state": "approving",
"approver_rule": 1,
"necessary_approver_rule": 0,
"push_reset_enabled": true,
"created_at": "2019-04-18T09:23:51+0000",
"updated_at": "2019-04-18T09:23:51+0000"
}
# 获取项目中某个具体的 Commit 评审 (根据 iid)
获取项目中某个具体的 Commit 评审情况。
GET /api/v3/projects/:id/review/iid/:review_iid
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_iid | integer | 代码评审在项目中的编号 iid |
返回值:
{
"labels": [],
"title": "创建差异",
"description": "创建差异",
"commits": [
{
"id": "8a7f0548f9c18ce7e28ed8fb27ad700d44768362",
"commit_date": "2019-04-24T08:24:43+0000"
},
{
"id": "479f9d544f57fc571af9a88fb7e8dea1e56d899a",
"commit_date": "2019-04-18T07:34:52+0000"
}
],
"author": {
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
},
"reviewers": [
{
"type": "suggestion",
"review_state": "approving",
"review_duration": 0,
"created_at": "2019-08-16T09:16:57+0000",
"updated_at": "2019-08-16T09:56:28+0000",
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
}
],
"id": 276495,
"project_id": 9837556,
"reviewable_id": 102,
"reviewable_type": "comparison",
"state": "approving",
"approver_rule": 1,
"necessary_approver_rule": 0,
"push_reset_enabled": true,
"created_at": "2019-04-18T09:23:51+0000",
"updated_at": "2019-04-18T09:23:51+0000"
}
# 邀请评审人
给项目中的 Commit 评审添加评审人
- reviewer_id 和 necessary_reviewer_id 两个必须有一个有值
POST /api/v3/projects/:id/review/:review_id/invite
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
| reviewer_id | Integer(可选) | 评审人 id (只能是 id。多个评审人请用英文逗号分隔) |
| necessary_reviewer_id | Integer(可选) | 必要评审人 id (只能是 id。多个评审人请用英文逗号分隔) |
返回值:
{
"labels": [],
"title": "api 增加 reviewer_id",
"description": null,
"author": {
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
},
"reviewers": [
{
"id": 0002,
"username": "git_user02",
"web_url": "https://git.tencent.com/u/git_user02",
"name": "git_user02",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png",
"type": "invite",
"review_state": "approving",
"created_at": "2019-04-19T08:30:20+0000",
"updated_at": "2019-04-19T08:30:20+0000"
}
],
"id": 276502,
"project_id": 9837556,
"reviewable_id": 108,
"reviewable_type": "comparison",
"state": "approving",
"approver_rule": 1,
"necessary_approver_rule": 0,
"push_reset_enabled": true,
"created_at": "2019-04-19T08:01:54+0000",
"updated_at": "2019-04-19T08:30:15+0000"
}
# 批量邀请评审人
给项目中的 Commit 评审批量添加评审人
- reviewer_ids 和 necessary_reviewer_ids 两个必须有一个有值
POST /api/v3/projects/:id/review/:review_id/batch_invite
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
| reviewer_ids[] | array of integer(可选) | 评审人的 id 列表,限制数量最大为 100 个 |
| necessary_reviewer_ids[] | array of integer(可选) | 必要评审人 id 列表,限制数量最大为 100 个) |
返回值:
{
"labels": [],
"title": "api 增加 reviewer_id",
"description": null,
"author": {
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
},
"reviewers": [
{
"id": 0002,
"username": "git_user02",
"web_url": "https://git.tencent.com/u/git_user02",
"name": "git_user02",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png",
"type": "invite",
"review_state": "approving",
"created_at": "2019-04-19T08:30:20+0000",
"updated_at": "2019-04-19T08:30:20+0000"
}
],
"id": 276502,
"project_id": 9837556,
"reviewable_id": 108,
"reviewable_type": "comparison",
"state": "approving",
"approver_rule": 1,
"necessary_approver_rule": 0,
"push_reset_enabled": true,
"created_at": "2019-04-19T08:01:54+0000",
"updated_at": "2019-04-19T08:30:15+0000",
"fail_list":[
{
"user_id":1126,
"msg":"403 forbidden, for reviewer:1126 is blocked"
},
{
"user_id":1126,
"msg":"403 forbidden, for necessary reviewer:1126 is blocked"
},
{
"user_id":2274,
"msg":"403 forbidden"
}
]
}
# 移除评审人
在项目中的 Commit 评审中移除某位评审人
DELETE /api/v3/projects/:id/review/:review_id/dismissals
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
| reviewer_id | Integer | 评审人 id |
返回值:
200等相关状态码
# 发表评审意见
在项目中的 Commit 评审发表评审意见。
PUT /api/v3/projects/:id/review/:review_id/reviewer/summary
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
| reviewer_event | string | 评审人事件,可选:(comment | approve | require_change | deny) |
| summary | string | 评审信息摘要 |
返回值:
{
"labels": [],
"title": "创建一个评审",
"description": "创建一个评审",
"author": {
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
},
"reviewers": [
{
"id": 0002,
"username": "git_user02",
"web_url": "https://git.tencent.com/u/git_user02",
"name": "git_user02",
"state": "active",
"avatar_url":
"https://git.tencent.com/assets/images/avatar/no_user_avatar.png",
"type": "suggestion",
"review_state": "approving",
"created_at": "2019-04-19T09:03:50+0000",
"updated_at": "2019-04-19T09:06:28+0000"
}
],
"id": 276504,
"project_id": 9837556,
"reviewable_id": 110,
"reviewable_type": "comparison",
"state": "change_denied",
"approver_rule": 1,
"necessary_approver_rule": 0,
"push_reset_enabled": true,
"created_at": "2019-04-19T09:03:50+0000",
"updated_at": "2019-04-19T09:06:47+0000"
}
# 重置代码评审状态
在项目中重置某个指定的 Commit 评审状态
PUT /api/v3/projects/:id/review/:review_id/reopen
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
返回值:
{
"labels": [],
"title": "创建一个评审",
"description": "创建一个评审意见",
"author": {
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
},
"reviewers": [
{
"id": 0002,
"username": "git_user02",
"web_url": "https://git.tencent.com/u/git_user02",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png",
"type": "suggestion",
"review_state": "approving",
"created_at": "2019-04-19T09:03:50+0000",
"updated_at": "2019-04-19T09:11:33+0000"
],
"id": 276504,
"project_id": 9837556,
"reviewable_id": 110,
"reviewable_type": "comparison",
"state": "approving",
"approver_rule": 1,
"necessary_approver_rule": 0,
"push_reset_enabled": true,
"created_at": "2019-04-19T09:03:50+0000",
"updated_at": "2019-04-19T09:11:33+0000"
}
# 更新 Commit 评审
在项目内更新某个指定的 Commit 评审
PUT /api/v3/projects/:id/review/:review_id
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
| title | string | 代码评审的标题 |
| description | string(可选) | 代码评审的描述 |
| labels | string(可选) | 合并请求的标签,多个请用英文逗号分隔 |
返回值:
{
"labels": [],
"title": "修改标题",
"description": "创建一个评审意见",
"author": {
"id": 0001,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
},
"reviewers": [
{
"id": 0002,
"username": "git_user02",
"web_url": "https://git.tencent.com/u/git_user02",
"name": "git_user01",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png",
"type": "suggestion",
"review_state": "approving",
"created_at": "2019-04-19T09:03:50+0000",
"updated_at": "2019-04-19T09:11:33+0000"
}
],
"id": 276504,
"project_id": 9837556,
"reviewable_id": 110,
"reviewable_type": "comparison",
"state": "approving",
"approver_rule": 1,
"necessary_approver_rule": 0,
"push_reset_enabled": true,
"created_at": "2019-04-19T09:03:50+0000",
"updated_at": "2019-04-19T09:11:33+0000"
}
# 查询某次 commit 评审的 diff
查询某次 commit 评审的 diff
GET /api/v3/projects/:id/review/:review_id/diff
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
返回值:
{
"id": 173,
"target_commit": "e9fb4410a293dfb84435278ed6e7ad22a569ddc7",
"source_commit": "ae8ff0c48a8c97b1bb9e3cb7867ab112bf2de0e3",
"target_branch": "test",
"source_branch": "test",
"source_project_id": 10701768,
"title": "test",
"review_state": "opened",
"target_project_id": 10701768,
"description": "tewt",
"files": [
{
"id": "ae8ff0c48a8c97b1bb9e3cb7867ab112bf2de0e3",
"commit_date": "2019-07-29T08:09:18+0000",
"author_name": "git_user01",
"committer_name": "git_user01",
"new_file": false,
"renamed_file": false,
"deleted_file": false,
"too_large": false,
"new_path": "README.md",
"old_path": "README.md",
"diff": "@@ -1 +1,4 @@\n+dddd\n+\n+\n dddd\n\\ No newline at end of file\n",
"binary": false,
"insertions": 3,
"deletions": 0
}
]
}
# 查询 Commit Review 已阅文件集
查询代码评审中确认已阅的文件列表
GET /api/v3/projects/:id/review/:review_id/viewed_files
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer or string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
| user_id | string(可选) | 指定阅读人 |
返回值:
[
{
"file_path": "test1",
"created_at": "2019-09-19T12:17:09+0000",
"user": {
"id": null,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": null
}
},
{
"file_path": "test2",
"created_at": "2019-09-19T12:17:16+0000",
"user": {
"id": null,
"username": "git_user02",
"web_url": "https://git.tencent.com/u/git_user02",
"name": "git_user02",
"state": "active",
"avatar_url": null
}
}
]
# 下载 Commit Review 差异文件集
下载指定代码评审的差异文件集
GET /api/v3/projects/:id/review/:review_id/changed_files
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer or string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
返回值:
文件流
# 查询 dashboard 维度 commit 评审
查询 dashboard 维度项目 commit 评审
GET /api/v3/dashboard/reviews
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| state | string(可选) | 代码状态,可选值:approving:评审中,approved:评审通过 change_required:需要修改 closed:已关闭,all:全部,不填写默认 approving |
| type | string(可选) | merge_request:mr,comparison:cr,all:全部 ,不填写默认 all |
| sort | string(可选) | 排序,允许按 created_desc, created_asc ,updated_desc,updated_asc(默认 created_desc) |
| assignee_user_name | string(可选) | 负责人(英文名) |
| author_user_name | string(可选) | 创建人(英文名) |
| owner_user_name | string(可选) | 文件负责人(英文名) |
| page | integer(可选) | 分页(默认值:1) |
| per_page | integer(可选) | 默认页面大小(默认值: 20,最大值: 100) |
返回值:
[{
"project": {
"id": 100010,
"description": "我的测试项目。",
"public": false,
"archived": false,
"visibility_level": 0,
"namespace": {
"created_at": "2019-03-16T00:00:07+0000",
"description": "sdsd",
"id": 123,
"name": "alix",
"owner_id": 2323,
"path": "alix",
"updated_at": "2019-03-16T00:00:07+0000"
},
"name": "ddd",
"name_with_namespace": "git_user01/ddd",
"path": "ddd",
"path_with_namespace": "git_user01/ddd",
"ssh_url_to_repo": "git@https://git.tencent.com/u/git_user01/ddd.git",
"http_url_to_repo": "http://git.tencent.com/u/git_user01/ddd.git",
"https_url_to_repo": "https://git.tencent.com/u/git_user01/ddd.git",
"web_url": "https://git.tencent.com/u/git_user01/ddd",
"created_at": "2019-07-15T07:47:47+0000",
"last_activity_at": "2019-09-18T07:53:14+0000",
"creator_id": 80899,
"avatar_url": "https://git.tencent.com/uploads/project/avatar/10701768"
},
"reviews": [{
"labels": ["优化点"],
"title": "tset",
"description": "tset",
"target_commit": null,
"target_branch": "test1",
"target_projectId": 10001,
"source_commit": null,
"source_branch": "test1",
"source_projectId": 10012,
"commits": null,
"author": {
"id": 1233,
"username": "sdsdf",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "sdsdf",
"state": "active",
"avatar_url": "https://git.tencent.com/u/git_user01/assets/images/avatar/no_user_avatar.png"
},
"reviewers": [{
"type": "invite",
"review_state": "approving",
"review_duration": 412,
"created_at": "2019-11-21T10:57:36+0000",
"updated_at": "2019-11-21T10:57:36+0000",
"id": 8875,
"username": "git_helper_02",
"web_url": "https://git.tencent.com/u/git_helper_02",
"name": "git_helper_02",
"state": "active",
"avatar_url": "https://git.tencent.com/assets/images/avatar/no_user_avatar.png"
}],
"owners": [{
"owner_id":2016,
"review_id":71411,
"project_id":10708403,
"file_path":".code.yml",
"created_at":"2020-10-28T02:45:18+0000",
"updated_at":"2020-10-28T02:45:18+0000",
"review_state":"approving",
"owner":{
"id":2016,
"username":"laradong",
"web_url":"https://dev.git.tencent.com/u/laradong",
"name":"laradong",
"state":"active",
"avatar_url":"https://dev.git.tencent.com/assets/images/avatar/no_user_avatar.png"
}
}],
"id": 67008,
"project_id": 10701768,
"reviewable_id": 375,
"reviewable_type": "comparison",
"iid": 42,
"state": "approving",
"approver_rule": -1,
"necessary_approver_rule": 0,
"push_reset_enabled": true,
"created_at": "2019-09-18T05:22:36+0000",
"updated_at": "2019-09-18T05:22:36+0000"
}]
}]
# 上报评审耗时
评审中途上报心跳,评审耗时将会累计。(心跳间隔超过 3 分钟将会丢弃)
POST /api/v3/projects/:id/review/:review_id/active
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | id = 项目唯一标识或NAMESPACE_PATH/PROJECT_PATH |
| review_id | integer | 代码评审的 id |
| reviewer_id | integer | 评审人 id(只能是 ID) |
返回值:
{
"id": 4077,
"review_id": 71059,
"project_id": 10702575,
"created_at": 1600154800000,
"updated_at": 1600676513694,
"reviewer_id": 2016,
"duration": 184
}
# 文件负责人
# 提交评审意见
文件负责人提交评审意见
PUT /api/v3/projects/:id/review/:review_id/owner/submit
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | id = 项目唯一标识或NAMESPACE_PATH/PROJECT_PATH |
| review_id | integer | 代码评审的 id |
| file_path | string | 文件全路径 |
| owner_event | string | 提交意见(owner_approve 或 owner_deny) |
| summary | string | 评审意见(owner_deny 时必填) |
返回值:
200或相关状态码
# 添加文件负责人
添加文件负责人
PUT /api/v3/projects/:id/review/:review_id/owner
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
| owner_id | string | 负责人 id |
| file_path | string | 文件全路径 |
返回值:
200或相关状态码
# 删除文件负责人
添加文件负责人
DELETE /api/v3/projects/:id/review/:review_id/owner
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
| owner_id | string | 负责人 id |
| file_path | string | 文件全路径 |
返回值:
200或相关状态码
# 查询文件负责人
查询文件负责人
GET /api/v3/projects/:id/review/:review_id/owner
参数:
| 参数 | 类型 | 描述 |
|---|---|---|
| id | integer 或 string | 项目 ID 或 项目全路径 project_full_path |
| review_id | integer | 代码评审的 id |
| page | integer(可选) | 分页(默认值:1) |
| per_page | integer(可选) | 默认页面大小(默认值: 20,最大值: 100) |
返回值:
[
{
"owner_id": 80899,
"review_id": 66872,
"project_id": 10701768,
"file_path": "test11",
"created_at": "2019-09-19T12:17:09+0000",
"updated_at": "2019-09-19T12:17:09+0000",
"owner": {
"id": null,
"username": "git_user01",
"web_url": "https://git.tencent.com/u/git_user01",
"name": "git_user01",
"state": "active",
"avatar_url": null
},
"review_state": null
},
{
"owner_id": 80899,
"review_id": 66872,
"project_id": 10701768,
"file_path": "test11wwq",
"created_at": "2019-09-19T12:17:16+0000",
"updated_at": "2019-09-19T12:17:16+0000",
"owner": {
"id": null,
"username": "git_user02",
"web_url": "https://git.tencent.com/u/git_user02",
"name": "git_user02",
"state": "active",
"avatar_url": null
},
"review_state": null
}
]