如何在AzureDevOps中防止直接推送到Master分支

8

像 Build Administrator 这样的用户组可以从 Azure Devops 访问项目。我需要控制在该组中的用户直接向主分支上传文件。该用户可以手动上传文件到除 Master 以外的所有分支。因为我的主分支是基于拉取请求的。如何实现这一点?需要任何权限吗?


只是为了理解,您想允许用户将文件存储在主分支上?他们使用哪种工具上传?Visual Studio还是只是拖放?无论如何,您可以通过以下方式在Azure Devops上进行一些设置Azure Devops ---> 您的存储库 --> 分支 --> 选择要修改的分支并单击3个点(...) --> 选择分支策略 - Miguel Martin Perez
3个回答

6
一旦您在默认分支上启用任何策略,更改必须通过拉取请求进行。从分支策略对话框中,分支策略:注意:如果启用了任何必需策略,则无法删除此分支,并且必须通过拉取请求进行更改。因此,要禁用直接提交,请按照以下步骤操作:1.导航到项目设置(齿轮图标);2.存储库>选择您的存储库;3.导航到“策略”;4.在“分支策略”部分中选择默认分支;5.启用任何对您的用例有意义的策略。“需要最少的审阅者”可能是一个很好的起点。

3
您的存储库中有几个关键分支,团队一直依赖这些分支处于良好状态,例如您的主分支。要对这些分支进行任何更改,需要要求拉取请求。直接将更改推送到受保护的分支的开发人员将拒绝其推送。因此,请遵循此文档:使用分支策略提高代码质量以保护您的主分支。
此外,请参考此文档:允许跳过分支策略而不放弃推送保护,注意不应授予您所提到的Build Administrator group这两个权限(完成拉取请求时绕过策略推送时绕过策略)主分支。请参阅:设置分支权限了解详细信息。

@NCN 我的回答有帮到您吗?如果有的话,您可以将其接受为答案,这将有助于其他遇到相同问题的社区成员,并且我们可以归档此线程,谢谢。 - Edward Han-MSFT
2
不要链接到文章,特别是那些非常长的文章 - 就像你的第一个文章一样(顺便说一句,它并没有讲述如何要求拉取请求)。请将答案直接粘贴在行内。 - Sat Thiru
链接已经失效,但我找到了这个:https://learn.microsoft.com/en-us/azure/devops/repos/git/branch-policies?view=azure-devops#bypass-branch-policies - Dan Friedman
如何拒绝直接推送到分支的任何更改? - AriesConnolly

-2

只是为了理解,

您想允许用户将文件存储在主分支上吗?他们使用的是哪个工具进行上传?Visual Studio还是只是拖放?

无论如何,您可以通过以下方式在Azure DevOps上进行一些设置:

Azure DevOps ---> 您的代码库 --> 分支 --> 选择要修改的分支并点击三个点 (...) --> 选择分支策略


我想要防止直接推送到主分支。 - NCN

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接