天蓝色回购分支机构政策

时间:2020-06-26 13:44:02

标签: azure-devops azure-repos

我花了整个下午整理一些天蓝色的回购物。一切进展顺利。

我无法回答的一个问题是限制/保护分支。我正在使用具有工作流程分支的现有项目:

{新功能}->每晚->测试->大师

当前这是手动完成的,并且有一个故事,周五星期五下午,疲惫的开发人员匆匆忙忙地拼凑流程,扼杀了生产(主分支)

我已经制定了一些政策,例如,审阅人数和通过运行单元测试进行验证。

问题是,使用Azure存储库,我可以限制可以将哪个分支PR到另一个分支中吗?

3 个答案:

答案 0 :(得分:0)

项目>>设置>>存储库>>选择回购>>策略>>选择分支

您无法控制是否可以将其公关,只有人们需要跳过的箍才可以批准和/或合并

  • 最少#位评论者
  • 检查链接的工作项
  • 检查评论分辨率
  • 限制合并类型:也许将其打开并取消选中 all 框,这样当PR被批准时就不能合并?

答案 1 :(得分:0)

问题是,使用Azure存储库,我可以限制可以将哪个分支PR到另一个分支中吗?

恐怕没有现成的分支策略可以限制将哪个分支PR到另一个分支中。

解决方法,如果触发构建验证的分支不是我们期望的分支,则我们可以在构建验证管道中添加一个使该管道失败的任务,从而使构建失败。这样,其他人将无法将意外分支合并到目标分支。

作为测试,我创建了一个内联powershell任务来限制可以将PR分支到哪个分支:

$branch = $Env:System_PullRequest_SourceBranch
Write-Host "Current branch is $branch"
if ($branch -eq "refs/heads/Dev1")
{
  Write-Host ("The source branch is expected branch.")
}
elseif ($branch -ne "refs/heads/Dev1")
{
  Write-Host ("##vso[task.complete result=Failed;]DONE")
}

希望这会有所帮助。

答案 2 :(得分:0)

如果有人找到我的解决方案...。 使用条件和“如果”

condition: eq(variables['Build.SourceBranch'], variables.sourceBranch)