获取合并请求的变化
功能介绍
获取合并请求的变化。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
URI
GET /v2/repositories/{repository_id}/merge-requests/{merge_request_iid}/changes
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
repository_id |
是 |
String |
仓库短ID |
merge_request_iid |
是 |
Integer |
合并请求在仓库的IID |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
X-Auth-Token |
是 |
String |
用户Token。 通过调用IAM服务获取用户Token接口获取(响应消息头中X-Subject-Token的值)。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
file_path |
否 |
String |
文件路径 |
ignore_whitespace_change |
否 |
Boolean |
是否忽略空格 |
force_encode |
否 |
Boolean |
是否需要转码 |
view |
否 |
String |
视图(可选值:simple) |
commit_id |
否 |
String |
Commit的ID |
响应参数
状态码: 200
参数 |
参数类型 |
描述 |
---|---|---|
result |
Result object |
响应结果 |
status |
String |
响应状态 |
状态码: 400
参数 |
参数类型 |
描述 |
---|---|---|
error |
Error object |
响应错误 |
status |
String |
响应状态 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
Integer |
合并请求ID |
iid |
Integer |
合并请求IID |
project_id |
Integer |
仓库ID |
title |
String |
标题 |
description |
String |
描述 |
state |
String |
合并请求状态 |
created_at |
String |
创建时间 |
updated_at |
String |
更新时间 |
target_branch |
String |
目标分支 |
source_branch |
String |
源分支 |
user_notes_count |
Integer |
检视意见数量 |
upvotes |
Integer |
增加评分 |
downvotes |
Integer |
减少评分 |
author |
UserDto object |
作者 |
source_project_id |
Integer |
源仓库ID |
target_project_id |
Integer |
目标仓库ID |
labels |
Array of strings |
标签 |
work_in_progress |
Boolean |
是否WIP |
merge_when_pipeline_succeeds |
Boolean |
是否流水线成功自动合入 |
merge_status |
String |
合并状态 |
sha |
String |
sha |
should_remove_source_branch |
Boolean |
是否删除源分支 |
force_remove_source_branch |
Boolean |
是否删除源分支 |
web_url |
String |
网页链接 |
time_stats |
TimeStats object |
时间花费 |
squash |
Boolean |
是否为Squash合入 |
merge_request_type |
String |
合并请求类型 |
subscribed |
Boolean |
是否订阅 |
changes_count |
String |
更改数量 |
diff_refs |
DiffRefs object |
sha值 |
user |
User object |
用户 |
added_lines |
Integer |
增加行数 |
removed_lines |
Integer |
减少行数 |
changes |
Array of Changes |
文件的变更 |
参数 |
参数类型 |
描述 |
---|---|---|
id |
Double |
用户ID |
name |
String |
用户名 |
state |
String |
用户状态 |
username |
String |
用户IamId |
name_cn |
String |
中文名 |
参数 |
参数类型 |
描述 |
---|---|---|
new_path |
String |
新路径 |
old_path |
String |
原路径 |
a_mode |
String |
a模式 |
b_mode |
String |
b模式 |
file_path |
String |
文件路径 |
new_file |
Boolean |
是否新增文件 |
renamed_file |
Boolean |
是否重命名文件 |
deleted_file |
Boolean |
是否删除文件 |
diff |
String |
差异 |
binary |
Boolean |
是否二进制文件 |
too_large |
Boolean |
是否超大文件 |
collapsed |
Boolean |
是否压缩 |
added_lines |
Integer |
增加行数 |
removed_lines |
Integer |
减少行数 |
content_sha |
String |
内容的sha值 |
submodule |
Boolean |
是否子模块 |
expanded |
Boolean |
是否展开 |
diff_refs |
DiffRefs object |
sha值 |
mode_changed |
Boolean |
是否变更模式 |
file_type |
String |
文件类型 |
请求示例
GET https://{endpoint}/v2/repositories/456156/merge-requests/1/changes?view=simple
响应示例
状态码: 200
{ "result": { "id": 42466, "iid": 2, "project_id": 892155, "title": "新建文件 111", "description": "merge \"1\" into \"master\"\n新建文件 111", "state": "opened", "created_at": "2024-03-24T11:29:56.000+08:00", "updated_at": "2024-04-10T17:34:06.000+08:00", "target_branch": "master", "source_branch": "1", "user_notes_count": 2, "upvotes": 0, "downvotes": 0, "author": { "id": 6916, "name": "Online_L0_CodeHub", "username": "5cb39fe67a2b465283c1463a87274980", "state": "active", "name_cn": "Online_L0_CodeHub" }, "source_project_id": 892155, "target_project_id": 892155, "labels": [], "work_in_progress": false, "merge_when_pipeline_succeeds": false, "merge_status": "can_be_merged", "sha": "43b573473948e13934379993943ac5deea7cd391", "should_remove_source_branch": false, "force_remove_source_branch": false, "web_url": "https://test.com/dcf7e8cde4474a4e8219921f564c32d6/test_no_readme/merge_requests/2", "time_stats": { "total_time_spent": 0 }, "squash": false, "merge_request_type": "MergeRequest", "subscribed": true, "changes_count": "1", "diff_refs": { "base_sha": "ca4cf1a049e286032b25e1604f44f2969818b3f5", "head_sha": "43b573473948e13934379993943ac5deea7cd391", "start_sha": "ca4cf1a049e286032b25e1604f44f2969818b3f5" }, "user": { "can_merge": true }, "added_lines": 5, "removed_lines": 0, "changes": [ { "old_path": "111", "new_path": "111", "a_mode": "0", "b_mode": "100644", "file_path": "111", "new_file": true, "renamed_file": false, "deleted_file": false, "diff": "@@ -0,0 +1,5 @@\n+1\r\n+2\r\n+3\r\n+4\r\n+5\n\\ No newline at end of file\n", "binary": false, "too_large": false, "collapsed": false, "added_lines": 5, "removed_lines": 0, "content_sha": "43b573473948e13934379993943ac5deea7cd391", "submodule": false, "expanded": true, "diff_refs": { "base_sha": "ca4cf1a049e286032b25e1604f44f2969818b3f5", "head_sha": "43b573473948e13934379993943ac5deea7cd391", "start_sha": "ca4cf1a049e286032b25e1604f44f2969818b3f5" }, "mode_changed": true, "file_type": "text_type" } ] }, "status": "success" }
状态码: 400
Bad Request
{ "error": { "code": "CH.010001", "message": "参数非法" }, "status": "failed" }
状态码
状态码 |
描述 |
---|---|
200 |
OK |
400 |
Bad Request |
错误码
请参见错误码。