我想在PowerShell中使用REST API放弃TFS中的pull请求。此外,我也需要删除源分支。根据{{3}},有可能并且示例REST请求可能如下所示:
网址为:
the official docs {repo_ID} / pullrequests / {PR_ID}?API-版本= 3.0预览
身体是:
{
"status": "abandoned",
"completionOptions": {
"deleteSourceBranch": "true"
}
}
拉取请求会按预期被放弃,但源分支不会被删除。
通过REST API放弃PR时是否可以删除源分支?是这样,怎么样?或许,completionOptions
仅用于完成公关,而不是放弃?..
我正在使用TFS 2015 Update-3(版本14.102.25423.0)。
答案 0 :(得分:1)
尽管文档在这一点上并不清楚,但除非您确实正在完成PR,否则completionOptions
似乎会被忽略。 (对于影响合并提交的选项,它会做什么,因为没有创建?还要注意git本身会拒绝删除尚未合并的分支的请求...)
您似乎需要发送删除分支的后续请求;但是git的REST API并不是我所说的全面的,据我所知,没有选择这样做。
所以,IMO你最好的选择是,在发出放弃拉取请求的请求后,让git cli强制推送删除分支。请注意,这将删除引用,但提交将保留。据我所知,TFS不进行垃圾收集,更不用说强制gc运行的选项,所以我知道如果你需要提交(以及其中的树/ blob版本)也没有实际的解决方案被清理干净。