阻止在本地git上的某个分支上提交和推送

时间:2016-01-19 12:45:30

标签: git

我正在与我的大学合作开展项目,我们已经决定进入develop分支的所有代码都应该作为BitBucket上的拉取请求(或者选择git托管)。 这意味着我们不希望任何开发者被允许直接推送到developmaster分支。

BitBucket有一个设置来防止某些用户推送到这些分支。但是,
1.您不能将所有成员列入此列表中 2.置于此列表中的用户无法合并拉取请求

我想要的是一种本地阻止developmaster分支上的两次提交的方法。有一个简单的方法吗?

1 个答案:

答案 0 :(得分:1)

  

BitBucket有一个设置来防止某些用户推送到这些分支。但

     
      
  1. 您无法将所有成员列入此列表
  2.   
  3. 此列表中的用户无法合并拉取请求
  4.   

Bitbucket允许您限制对某些分支的写访问。如果你有一个相对较小的小组,每个人都知道其他人,那么允许每个人写访问权限但制定一个规则,任何人都不应该直接推送,没有人应该合并他们自己的拉取请求。这通常很好 - 每个人都可以看到回购的变化,所以如果有人违反规则就会很清楚。

对于较大的组,请定义一组允许查看和合并其他人的拉取请求的用户。这就是大多数开源项目的工作方式 - 任何人都可以发送拉取请求,但只有一小组可信提交者可以接受并合并这些贡献。

如果有必要,即使是一个小组也适用相同的策略:至少在开始时只提供一个或两个人提交权限,这样只有他们才能合并拉取请求。但是,您不能阻止所有人拥有写入权限,否则 nobody 可以合并,并且这些分支永远不会更改。

如果您仍希望在本地阻止推送/提交,可以使用 git hooks
block pushes from certain branches locally
block commits on certain branches locally