如何根据某些规则拒绝git push

时间:2019-05-10 01:25:23

标签: git github bitbucket

在我们的存储库中,我们指示所有开发人员不要在数据库对象前添加一个关键字(ops $ abc)。例如,“ update ops $ abc.tablename”。我们已指示使用update tablenane。

但是开发人员正在犯这种错误。有什么方法可以拒绝推送到具有这种代码的分支吗?

2 个答案:

答案 0 :(得分:3)

您可以使用GitHub protected branches

  1. 将您的masterrelease分支设置为受保护。
  2. 添加自动测试,如果开发人员使用update ops$abc.tablename,该测试将失败。
  3. 将您的CI服务器配置为在打开GitHub提取请求时运行自动化测试。

现在,开发人员将无法通过此更改合并合并请求(或直接提交到受保护的分支)。

答案 1 :(得分:1)

您可以使用git hooks功能来实现此目的。但是,它要求每个开发人员手动设置./.git/hooks/pre-commit。或者,您可以在存储库中为开发人员创建Shell脚本,以将pre-commit文件复制到./.git/hooks中。

无论如何,都需要开发人员的配合。

相关问题