我有一个 PowerShell 脚本,用于使用 Azure DevOps API 创建从开发到掌握的合并请求。
$uri = "https://dev.azure.com/$organization/$teamProject/_apis/git/repositories/$repoName/pullrequests?api-version=5.1"
$body = "{sourceRefName:'develop',targetRefName:'master',title:'develop to master'}"
$result = Invoke-RestMethod -Uri $uri -Method Post -ContentType "application/json" -Headers @{Authorization=("Basic {0}" -f $base64AuthInfo)} -Body $body
是否可以基于使用 Azure DevOps API 开发的提交创建合并请求? 例如,考虑这是我的开发分支,具有以下提交历史:
commit #5
commit #4
commit #3
commit #2
commit #1
我可以创建一个 Pull Request,这样 Pull Request 应该只包含以下提交:
commit #3
commit #2
commit #1
您可以从任何您喜欢的提交创建一个分支,然后通过 PR 合并该分支。
即
git checkout commit3
git branch foo
git push foo
然后从
foo
分支做PR。
Rest Api(和手动创建)不支持提交选择...您可以尝试创建一个临时分支并从中使用 PR。
要创建分支,请尝试使用 refs:Update Refs
请求体应该是这样的:
{
"name": "refs/heads/my-temporary-branch",
"oldObjectId": "0000000000000000000000000000000000000000",
"newObjectId": "commit #3 ID"
}