提交未在与 gitlab 的合并请求中提交 api
commits wasnt submit in merge request with gitlab api
根据 GITLAB API 文档,我想在一个分支上创建多个提交,然后在 bash 脚本中创建一个合并请求。
curl -i --request POST --header "PRIVATE-TOKEN: privatekey" --header "Content-Type: application/json" --data "$PAYLOAD" "https://hostgit/api/v4/projects/1234/repository/commits"
关于有效载荷
PAYLOAD=$(cat << JSON
{
"branch": "mybranch",
"commit_message": "some commit message",
"actions": [
{
"action": "update",
"file_path": "roles/test.j2"
},
{
"action": "update",
"file_path": "roles/prod.j2"
}
]
}
JSON
)
脚本更新文件所以在这次提交之后我使用创建 MR 但它是空的 MR.why 它是空的??提交更改为 0。
我还使用了一个文件路径来满足操作中的内容,但它不起作用并且提交仍然是空的。
对于update
动作,您必须指定文件的内容,并且应该是整个文件的内容,而不仅仅是更新的部分。然后 Gitlab 将生成差异并正确提交更改。您需要更新您的有效载荷,使其看起来像:
PAYLOAD=$(cat << JSON
{
"branch": "mybranch",
"commit_message": "some commit message",
"actions": [
{
"action": "update",
"file_path": "roles/test.j2",
"content": "this is the entire content in the test.j2 file after updating it"
},
{
"action": "update",
"file_path": "roles/prod.j2",
"content": "This is the entire content in the prod.j2 file after updating it"
}
]
}
JSON
)
您可以在 the docs 中看到所有可选和必需的参数。
]
根据 GITLAB API 文档,我想在一个分支上创建多个提交,然后在 bash 脚本中创建一个合并请求。
curl -i --request POST --header "PRIVATE-TOKEN: privatekey" --header "Content-Type: application/json" --data "$PAYLOAD" "https://hostgit/api/v4/projects/1234/repository/commits"
关于有效载荷
PAYLOAD=$(cat << JSON
{
"branch": "mybranch",
"commit_message": "some commit message",
"actions": [
{
"action": "update",
"file_path": "roles/test.j2"
},
{
"action": "update",
"file_path": "roles/prod.j2"
}
]
}
JSON
)
脚本更新文件所以在这次提交之后我使用创建 MR 但它是空的 MR.why 它是空的??提交更改为 0。 我还使用了一个文件路径来满足操作中的内容,但它不起作用并且提交仍然是空的。
对于update
动作,您必须指定文件的内容,并且应该是整个文件的内容,而不仅仅是更新的部分。然后 Gitlab 将生成差异并正确提交更改。您需要更新您的有效载荷,使其看起来像:
PAYLOAD=$(cat << JSON
{
"branch": "mybranch",
"commit_message": "some commit message",
"actions": [
{
"action": "update",
"file_path": "roles/test.j2",
"content": "this is the entire content in the test.j2 file after updating it"
},
{
"action": "update",
"file_path": "roles/prod.j2",
"content": "This is the entire content in the prod.j2 file after updating it"
}
]
}
JSON
)
您可以在 the docs 中看到所有可选和必需的参数。 ]