mirror of
https://gitlink.org.cn/Gitlink/forgeplus.git
synced 2026-05-03 03:40:49 +08:00
新增:合并请求版本列表和diff接口文档
This commit is contained in:
@@ -499,4 +499,319 @@ await octokit.request('GET /api/Jasder/gitlink/pulls.json')
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
## 获取合并请求版本列表
|
||||
获取合并请求版本列表
|
||||
|
||||
> 示例:
|
||||
|
||||
```shell
|
||||
curl -X GET http://localhost:3000/api/v1/yystopf/ceshi_commit/pulls/3/versions.json
|
||||
```
|
||||
|
||||
```javascript
|
||||
await octokit.request('GET /api/v1/yystopf/ceshi_commit/pulls/3/versions.json')
|
||||
```
|
||||
|
||||
### HTTP 请求
|
||||
`GET /api/v1/:owner/:repo/pulls/:index/versions.json`
|
||||
|
||||
### 请求参数:
|
||||
参数 | 必选 | 默认 | 类型 | 字段说明
|
||||
--------- | ------- | ------- | -------- | ----------
|
||||
|owner |是| |string |用户登录名 |
|
||||
|repo |是| |string |项目标识identifier |
|
||||
|index |是|| int |合并请求序号|
|
||||
|
||||
|
||||
### 返回字段说明:
|
||||
参数 | 类型 | 字段说明
|
||||
--------- | ----------- | -----------
|
||||
|total_count |int |合并请求版本总数|
|
||||
|versions.id |int |版本ID|
|
||||
|versions.add_line_num |int |该版本新增行数|
|
||||
|versions.del_line_num |int |该版本删除行数|
|
||||
|versions.commits_count |int |该版本提交总数|
|
||||
|versions.files_count |int |该版本提交文件总数|
|
||||
|versions.base_commit_sha |string |目标commit ID|
|
||||
|versions.head_commit_sha |string |源commit ID|
|
||||
|versions.start_commit_sha|string |该版本起始commit ID|
|
||||
|versions.created_time |int |版本创建时间|
|
||||
|versions.updated_time |int |版本更新时间|
|
||||
|
||||
> 返回的JSON示例:
|
||||
|
||||
```json
|
||||
{
|
||||
"total_count": 1,
|
||||
"versions": [
|
||||
{
|
||||
"id": 33,
|
||||
"add_line_num": 5,
|
||||
"del_line_num": 2,
|
||||
"commits_count": 31,
|
||||
"files_count": 29,
|
||||
"base_commit_sha": "4a277037093c1248e46d2946ee30b61cccdb9df9",
|
||||
"head_commit_sha": "fa3b1cdc8e0727d0fb9c96d28c545867c39815b8",
|
||||
"start_commit_sha": "e49b1fd335e093a440fcf35a21e050afd48ef932",
|
||||
"created_time": 1658469499,
|
||||
"updated_time": 1658469499
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
## 获取合并请求版本Diff
|
||||
获取合并请求版本Diff(支持获取单文件Diff)
|
||||
|
||||
> 示例:
|
||||
|
||||
```shell
|
||||
curl -X GET \
|
||||
-d "filepath=ceshi_dir_1/new_file_1" \
|
||||
http://localhost:3000/api/v1/yystopf/ceshi_commit/pulls/3/versions/33/diff.json
|
||||
```
|
||||
|
||||
```javascript
|
||||
await octokit.request('GET /api/v1/yystopf/ceshi_commit/pulls/3/versions/33/diff.json')
|
||||
```
|
||||
|
||||
### HTTP 请求
|
||||
`GET /api/v1/:owner/:repo/pulls/:index/versions/:version_id/diff.json`
|
||||
|
||||
### 请求参数:
|
||||
参数 | 必选 | 默认 | 类型 | 字段说明
|
||||
--------- | ------- | ------- | -------- | ----------
|
||||
|owner |是| |string |用户登录名 |
|
||||
|repo |是| |string |项目标识identifier |
|
||||
|index |是|| int |合并请求序号|
|
||||
|version_id|是|| int |版本ID|
|
||||
|filepath|否||string|文件路径|
|
||||
|
||||
### 列表返回字段说明:
|
||||
参数 | 类型 | 字段说明
|
||||
--------- | ----------- | -----------
|
||||
|file_nums|int|文件数量|
|
||||
|total_addition|int|新增行数|
|
||||
|total_deletion|int|删除行数|
|
||||
|files.name|string|文件名称|
|
||||
|files.oldname|string|文件修改前名称|
|
||||
|files.addition|int|文件新增行数|
|
||||
|files.deletion|int|文件删除行数|
|
||||
|files.type|int|文件类型 1: 新增 2: 更改 3: 删除 4: 重命名 5: 复制|
|
||||
|files.is_created|bool|是否为新建文件|
|
||||
|files.is_deleted|bool|是否为删除文件|
|
||||
|files.is_bin|bool|是否为二进制文件|
|
||||
|files.is_lfs_file|bool|是否为LFS文件|
|
||||
|files.is_renamed|bool|是否重命名|
|
||||
|files.is_ambiguous|bool||
|
||||
|files.is_submodule|bool|是否为子模块|
|
||||
|files.sections.file_name|string|文件名称|
|
||||
|files.sections.name|string||
|
||||
|files.sections.lines.left_index|int|文件变动之前所在行数|
|
||||
|files.sections.lines.right_index|int|文件变动之后所在行数|
|
||||
|files.sections.lines.match|int||
|
||||
|files.sections.lines.type|int|文件变更类型|
|
||||
|files.sections.lines.content|string|文件变更内容|
|
||||
|files.sections.lines.section_path|string|文件路径|
|
||||
|files.sections.lines.section_last_left_index|int||
|
||||
|files.sections.lines.section_last_right_index|int||
|
||||
|files.sections.lines.section_left_index|int|文件变更之前所在行数|
|
||||
|files.sections.lines.section_right_index|int|文件变更之后所在行数(即:页面编辑器开始显示的行数)|
|
||||
|files.sections.lines.section_left_hunk_size|int|文件变更之前的行数|
|
||||
|files.sections.lines.section_right_hunk_size|int|文件变更之后的行数(及当前页面编辑器显示的总行数)|
|
||||
|files.is_incomplete|bool|是否不完整|
|
||||
|files.is_incomplete_line_too_long|bool|文件是否不完整是因为太长了|
|
||||
|files.is_protected|bool|文件是否被保护|
|
||||
|
||||
> 列表返回的JSON示例:
|
||||
|
||||
```json
|
||||
{
|
||||
"file_nums": 29,
|
||||
"total_addition": 5,
|
||||
"total_deletion": 2,
|
||||
"files": [
|
||||
{
|
||||
"name": "README.md",
|
||||
"oldname": "README.md",
|
||||
"addition": 1,
|
||||
"deletion": 2,
|
||||
"type": 2,
|
||||
"is_created": false,
|
||||
"is_deleted": false,
|
||||
"is_bin": false,
|
||||
"is_lfs_file": false,
|
||||
"is_renamed": false,
|
||||
"is_ambiguous": false,
|
||||
"is_submodule": false,
|
||||
"sections": [
|
||||
{
|
||||
"file_name": "README.md",
|
||||
"name": "",
|
||||
"lines": [
|
||||
{
|
||||
"left_index": 0,
|
||||
"right_index": 0,
|
||||
"match": 0,
|
||||
"type": 4,
|
||||
"content": "@@ -1,2 +1 @@",
|
||||
"section_path": "README.md",
|
||||
"section_last_left_index": 0,
|
||||
"section_last_right_index": 0,
|
||||
"section_left_index": 1,
|
||||
"section_right_index": 1,
|
||||
"section_left_hunk_size": 2,
|
||||
"section_right_hunk_size": 0
|
||||
},
|
||||
{
|
||||
"left_index": 1,
|
||||
"right_index": 0,
|
||||
"match": 3,
|
||||
"type": 3,
|
||||
"content": "-# ceshi_commit"
|
||||
},
|
||||
{
|
||||
"left_index": 2,
|
||||
"right_index": 0,
|
||||
"match": -1,
|
||||
"type": 3,
|
||||
"content": "-"
|
||||
},
|
||||
{
|
||||
"left_index": 0,
|
||||
"right_index": 1,
|
||||
"match": 1,
|
||||
"type": 2,
|
||||
"content": "+adsa"
|
||||
}
|
||||
]
|
||||
},
|
||||
{}
|
||||
],
|
||||
"is_incomplete": false,
|
||||
"is_incomplete_line_too_long": false,
|
||||
"is_protected": false
|
||||
}
|
||||
]
|
||||
}
|
||||
```
|
||||
|
||||
### 单个文件返回字段说明:
|
||||
参数 | 类型 | 字段说明
|
||||
--------- | ----------- | -----------
|
||||
|name|string|文件名称|
|
||||
|oldname|string|文件修改前名称|
|
||||
|addition|int|文件新增行数|
|
||||
|deletion|int|文件删除行数|
|
||||
|type|int|文件类型 1: 新增 2: 更改 3: 删除 4: 重命名 5: 复制|
|
||||
|is_created|bool|是否为新建文件|
|
||||
|is_deleted|bool|是否为删除文件|
|
||||
|is_bin|bool|是否为二进制文件|
|
||||
|is_lfs_file|bool|是否为LFS文件|
|
||||
|is_renamed|bool|是否重命名|
|
||||
|is_ambiguous|bool||
|
||||
|is_submodule|bool|是否为子模块|
|
||||
|sections.file_name|string|文件名称|
|
||||
|sections.name|string||
|
||||
|sections.lines.left_index|int|文件变动之前所在行数|
|
||||
|sections.lines.right_index|int|文件变动之后所在行数|
|
||||
|sections.lines.match|int||
|
||||
|sections.lines.type|int|文件变更类型|
|
||||
|sections.lines.content|string|文件变更内容|
|
||||
|sections.lines.section_path|string|文件路径|
|
||||
|sections.lines.section_last_left_index|int||
|
||||
|sections.lines.section_last_right_index|int||
|
||||
|sections.lines.section_left_index|int|文件变更之前所在行数|
|
||||
|sections.lines.section_right_index|int|文件变更之后所在行数(即:页面编辑器开始显示的行数)|
|
||||
|sections.lines.section_left_hunk_size|int|文件变更之前的行数|
|
||||
|sections.lines.section_right_hunk_size|int|文件变更之后的行数(及当前页面编辑器显示的总行数)|
|
||||
|is_incomplete|bool|是否不完整|
|
||||
|is_incomplete_line_too_long|bool|文件是否不完整是因为太长了|
|
||||
|is_protected|bool|文件是否被保护|
|
||||
|
||||
> 单个文件返回的JSON示例:
|
||||
|
||||
```json
|
||||
{
|
||||
"name": "README.md",
|
||||
"oldname": "README.md",
|
||||
"addition": 1,
|
||||
"deletion": 2,
|
||||
"type": 2,
|
||||
"is_created": false,
|
||||
"is_deleted": false,
|
||||
"is_bin": false,
|
||||
"is_lfs_file": false,
|
||||
"is_renamed": false,
|
||||
"is_ambiguous": false,
|
||||
"is_submodule": false,
|
||||
"sections": [
|
||||
{
|
||||
"file_name": "README.md",
|
||||
"name": "",
|
||||
"lines": [
|
||||
{
|
||||
"left_index": 0,
|
||||
"right_index": 0,
|
||||
"match": 0,
|
||||
"type": 4,
|
||||
"content": "@@ -1,2 +1 @@",
|
||||
"section_path": "README.md",
|
||||
"section_last_left_index": 0,
|
||||
"section_last_right_index": 0,
|
||||
"section_left_index": 1,
|
||||
"section_right_index": 1,
|
||||
"section_left_hunk_size": 2,
|
||||
"section_right_hunk_size": 0
|
||||
},
|
||||
{
|
||||
"left_index": 1,
|
||||
"right_index": 0,
|
||||
"match": 3,
|
||||
"type": 3,
|
||||
"content": "-# ceshi_commit"
|
||||
},
|
||||
{
|
||||
"left_index": 2,
|
||||
"right_index": 0,
|
||||
"match": -1,
|
||||
"type": 3,
|
||||
"content": "-"
|
||||
},
|
||||
{
|
||||
"left_index": 0,
|
||||
"right_index": 1,
|
||||
"match": 1,
|
||||
"type": 2,
|
||||
"content": "+adsa"
|
||||
}
|
||||
]
|
||||
},
|
||||
{
|
||||
"file_name": "README.md",
|
||||
"name": "",
|
||||
"lines": [
|
||||
{
|
||||
"left_index": 0,
|
||||
"right_index": 0,
|
||||
"match": 0,
|
||||
"type": 4,
|
||||
"content": " ",
|
||||
"section_path": "README.md",
|
||||
"section_last_left_index": 0,
|
||||
"section_last_right_index": 1,
|
||||
"section_left_index": 3,
|
||||
"section_right_index": 2,
|
||||
"section_left_hunk_size": 0,
|
||||
"section_right_hunk_size": 0
|
||||
}
|
||||
]
|
||||
}
|
||||
],
|
||||
"is_incomplete": false,
|
||||
"is_incomplete_line_too_long": false,
|
||||
"is_protected": false
|
||||
}
|
||||
```
|
||||
@@ -1990,25 +1990,27 @@ await octokit.request('GET /api/v1/yystopf/csfjkkj/compare.json')
|
||||
|diff.files.is_created|bool|是否为新建文件|
|
||||
|diff.files.is_deleted|bool|是否为删除文件|
|
||||
|diff.files.is_bin|bool|是否为二进制文件|
|
||||
|diff.files.is_lfs_file|bool||
|
||||
|diff.files.is_lfs_file|bool|是否为LFS文件|
|
||||
|diff.files.is_renamed|bool|是否重命名|
|
||||
|diff.files.is_ambiguous|bool||
|
||||
|diff.files.is_submodule|bool|是否为子模块|
|
||||
|diff.files.sections.file_name|string|文件名称|
|
||||
|diff.files.sections.name|string||
|
||||
|diff.files.sections.lines.left_index|int||
|
||||
|diff.files.sections.lines.right_index|int||
|
||||
|diff.files.sections.lines.left_index|int|文件变动之前所在行数|
|
||||
|diff.files.sections.lines.right_index|int|文件变动之后所在行数|
|
||||
|diff.files.sections.lines.match|int||
|
||||
|diff.files.sections.lines.type|int||
|
||||
|diff.files.sections.lines.content|string||
|
||||
|diff.files.sections.lines.section_path|string||
|
||||
|diff.files.sections.lines.type|int|文件变更类型|
|
||||
|diff.files.sections.lines.content|string|文件变更内容|
|
||||
|diff.files.sections.lines.section_path|string|文件路径|
|
||||
|diff.files.sections.lines.section_last_left_index|int||
|
||||
|diff.files.sections.lines.section_last_right_index|int||
|
||||
|diff.files.sections.lines.section_left_index|int||
|
||||
|diff.files.sections.lines.section_right_index|int||
|
||||
|diff.files.sections.lines.section_left_hunk_size|int||
|
||||
|diff.files.sections.lines.section_right_hunk_size|int||
|
||||
|
||||
|diff.files.sections.lines.section_left_index|int|文件变更之前所在行数|
|
||||
|diff.files.sections.lines.section_right_index|int|文件变更之后所在行数(即:页面编辑器开始显示的行数)|
|
||||
|diff.files.sections.lines.section_left_hunk_size|int|文件变更之前的行数|
|
||||
|diff.files.sections.lines.section_right_hunk_size|int|文件变更之后的行数(及当前页面编辑器显示的总行数)|
|
||||
|diff.files.is_incomplete|bool|是否不完整|
|
||||
|diff.files.is_incomplete_line_too_long|bool|文件是否不完整是因为太长了|
|
||||
|diff.files.is_protected|bool|文件是否被保护|
|
||||
|
||||
|
||||
> 返回的JSON示例:
|
||||
|
||||
Reference in New Issue
Block a user