我花了整个下午整理一些天蓝色的回购物。一切进展顺利。
我无法回答的一个问题是限制/保护分支。我正在使用具有工作流程分支的现有项目:
{新功能}->每晚->测试->大师
当前这是手动完成的,并且有一个故事,周五星期五下午,疲惫的开发人员匆匆忙忙地拼凑流程,扼杀了生产(主分支)
我已经制定了一些政策,例如,审阅人数和通过运行单元测试进行验证。
问题是,使用Azure存储库,我可以限制可以将哪个分支PR到另一个分支中吗?
答案 0 :(得分:0)
项目>>设置>>存储库>>选择回购>>策略>>选择分支
您无法控制是否可以将其公关,只有人们需要跳过的箍才可以批准和/或合并
答案 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)