yzc164 发表于 2018-1-11 17:36:18

Gitlab CR

  Gitlab 进行 CR 的强限制,原理很简单。
https://images2017.cnblogs.com/blog/1080969/201712/1080969-20171220170304834-1987692143.png
  实现起来,利用的是 git 自身的 custom_hooks 的支持,以及需要对 gitlab 做一点操作,对它的数据库开放一个只读权限的账号,来处理。
  git的custom_hooks 分为三类:
  pre-receive
  post-receive
  update
  如果要限制 merge 到 master 分支,可以在 pre-ceive上做文章:
  增加脚本。
  对语言的支持也非常广泛,SHELL, Ruby, Python, 在我的理解中,只要是脚本语言,都会支持得很好。
  原理参考 gitlab 的官方文档,对 hook 的执行顺序有详尽介绍:
  https://docs.gitlab.com/ce/administration/custom_hooks.html
页: [1]
查看完整版本: Gitlab CR