我只希望特定的分支合并到特定的分支。
一些示例:我想做master
分支只接受来自test
分支的拉取请求,而test
分支只接受来自development
分支的拉取请求。
如何对TFS / Git进行此限制?
我们有一些关于审阅者和构建验证的政策。
答案 0 :(得分:1)
如果您有分支机构策略,则可以采取一种变通方法来实现目标:
在构建定义(在构建验证中指定)中,添加一个PowerShell任务,该任务检查请求请求的源分支。如果不是源分支,那么构建将失败。
例如,在以下脚本中,如果源分支不是test
,构建将失败,因此将其添加到master
分支构建验证中:
$sourceBranch = "$(System.PullRequest.SourceBranch)"
if($sourceBranch -ne "test")
{
exit 1
}
答案 1 :(得分:0)
我通过第三方网络挂钩集成解决了我的问题。
我开发了nodejs expressapp并将其托管在其他服务器上,并创建了集成规则,该规则在创建拉取请求时触发。我在节点应用程序中检查源分支和目标分支。
之后,我添加了此集成以合并策略。
太酷了,太容易了。谢谢大家。