属性以防止gitlab保护默认分支

属性以防止gitlab保护默认分支,git,git-branch,gitlab,Git,Git Branch,Gitlab,在版本7.4中,gitlab改变了新项目中受保护分支的行为 在每个新项目中,默认的分支(如master)都是受保护的分支,这意味着开发人员无法推送到它。在我的公司,很多开发人员都在默认/主分支上工作,现在在启动一个新项目时都在苦苦挣扎 我的问题:在ui或gitlab.rb中是否有属性来恢复7.4之前的行为并不保护默认分支?我不确定是否是默认参数,但每个项目都可以将master更改为未受保护,在项目中,转到设置->受保护分支并取消对master的保护 更新 gilt团队发表了一篇与你的问题相关的

在版本7.4中,gitlab改变了新项目中受保护分支的行为

在每个新项目中,默认的分支(如master)都是受保护的分支,这意味着开发人员无法推送到它。在我的公司,很多开发人员都在默认/主分支上工作,现在在启动一个新项目时都在苦苦挣扎


我的问题:在ui或
gitlab.rb
中是否有属性来恢复7.4之前的行为并不保护默认分支?

我不确定是否是默认参数,但每个项目都可以将master更改为未受保护,在项目中,转到设置->受保护分支并取消对master的保护

更新 gilt团队发表了一篇与你的问题相关的帖子!!
似乎没有默认属性。但是已经有了一个

我不确定该功能添加了哪个版本,但是在8.9.4版中,您现在可以选择允许开发人员推送到受保护的项目


此外,您现在必须单击右上角的gear小部件下拉列表,以获得项目中的“受保护的分支”选项。(见下文)

GitLab似乎有点改变了这一点,当我想在GitLab Community Edition 9.0.2中更改对分支的访问时,我可以在这里找到它们:

主页项目>设置(右上)>存储库(第二个,略暗的导航栏)>受保护的分支(向下滚动一点)

更多信息,请参阅

ui或gitlab.rb中是否有用于恢复7.4之前的行为而不保护默认分支的属性

这在12.5版中是可能的:

(适用于所有新项目):

  • 管理区>设置>常规>选项卡»可见性和访问控制«>字段»默认分支保护«
  • 选择
    不受保护:开发人员和维护人员都可以推送新提交、强制推送或删除分支。

(对于现有项目):

  • 项目>设置>存储库>选项卡»受保护分支«>字段»受保护分支«
  • 单击
    master
    分支旁边的
    Unprotect
    按钮

请注意:引入分支保护有一个很好的理由:

Git非常容易使用和滥用。对很多人来说,一个git的push-force命令很容易毁掉一天


嗯,我看到了。但这意味着,在创建和推动分支后,我必须更改每个项目。我认为每个新项目都有一个常规设置,我认为Gitlab团队spect您遵循的是最佳实践,您不会直接上传到master,因为没有进行代码审查的选项。请阅读gitlab flow博客文章,我知道这样做的最佳实践,我们有这样的项目。但我们是从cvs移民过来的,很多人仍然以“老式的方式”工作。我们决定,与其将它们与全新的工作流混淆,不如让它们以旧的方式工作。另一个问题:如何决定,哪个分支是默认分支?我正在阅读源代码,默认情况下,默认分支是受保护的,我假设默认分支是第一个指出此源代码的分支。我想我会在feedback.gitlab.com上提出一个建议,使其可配置。这是一个非常恼人的默认设置:我不能强制推送!!!似乎没有默认属性。但是feedback.gitlab.com上已经有一个功能请求。把它放在一个答案上,自我接受,ping me,然后获得一个upvote:)这是完全错误的,这是默认属性,第一个答案告诉你,这个博客“你可以使任何分支成为受保护的分支。我们默认使主分支成为受保护的分支,但你可以关闭它。”功能现在似乎已经实现:“自GitLab 7.8以来,您可以在应用程序设置中为整个服务器设置默认分支的默认保护。”“自GitLab 7.8以来,您可以在应用程序设置中为整个服务器设置默认分支的默认保护。“但是你在哪里可以找到这个设置?@Ben Creasy我不确定它是否只是在我的UI中颜色不好,或者新的UI是否隐藏了它,但是在进入admin->settings时,最上面的选项(在你鼠标悬停之前,它不是明显的下拉)是默认的分支保护;将其设置为“部分保护”可能会实现它所说的可能不适用于gitlab.com上的云实例的功能-顺便说一下,我在twitter上问过这一点,是的。。。但我想在当前版本中显示受保护分支设置的位置。上面的屏幕截图来自早期版本。另外,我提到了“允许开发人员推进到受保护的项目”的选项,这是一种不同的方式。这样可以保护项目,而原始解决方案需要完全取消对分支的保护。