git 如何限制来自特定分支的合并

wn9m85ua  于 2023-04-28  发布在  Git
关注(0)|答案(2)|浏览(260)

我想只有特定的分支合并到特定的分支。
一些示例:我想做master分支只接受来自test分支的拉取请求,test分支只接受来自development分支的拉取请求。
如何在TFS/Git上执行此限制?
我们有一些关于审阅者和构建验证的政策。

ufj5ltwl

ufj5ltwl1#

如果您有分支策略,则可以采取变通方法来实现目标:
在构建定义(您在构建验证中指定的)中,添加一个PowerShell任务,该任务检查拉取请求的源分支。当源分支不是您想要的分支时,构建将失败。
例如,在下面的脚本中,如果源分支不是test,则构建将失败,因此将其添加到master分支构建验证中:

$sourceBranch = "$(System.PullRequest.SourceBranch)"

if($sourceBranch -ne "test")
{
    exit 1
}
polkgigr

polkgigr2#

我通过第三方Web钩子集成解决了我的问题。
我开发了nodejs expressapp,并将其托管在不同的服务器上,我创建了集成规则,该规则在拉取请求创建时触发。我在我的节点应用程序中检查源和目标分支。
之后,我将此集成添加到合并策略中。
很酷,很简单。谢谢大家。

相关问题