【问题标题】:How to allow remove remote branches at gitolite and forbid non fast forward如何允许在 gitolite 删除远程分支并禁止非快进
【发布时间】:2012-08-29 12:11:51
【问题描述】:
我们需要允许开发者:
1) 创建主题分支并将它们保存在远程仓库中。
2) 进行更改。
3) 合并到“开发”分支。
4) 删除主题分支(git push origin :TestRemoteBranch)。
但我们宁愿禁止使用具有使用 RW 权限的非快进合并。
但是这个权限也禁止删除主题分支。
有什么方法可以避免非快进合并并允许删除主题分支(不是“开发”和“主”)?
【问题讨论】:
标签:
git
gitolite
remote-branch
fast-forward
【解决方案1】:
我通过 gitolite v2 解决了这个问题(在主分支上禁用倒带 - 主分支和开发):
回购文件格式
RW 主 = @all
- 主人 = @all
RW 开发 = @all
- 发展 = @all
RW+ = @全部
配置 gitolite-options.deny-repo = 1
【解决方案2】:
当你必须做核心 gitolite 不能做的检查时,是时候引入the VREF:
对于适用于该用户的规则中以VREF/FOO/ 开头的每个引用,都会触发对名为FOO 的程序的调用 (location here)。
因此,在您的程序“FOO”中,您可以检查推送是非快进(拒绝)还是分支删除(允许)。