【发布时间】:2014-10-18 22:22:20
【问题描述】:
我在 Amazon WS 上托管了 Gitloite 版本 3 (Git v1.9.1/gitolite v3.6.1-6)
我有以下设置:
Acme-Repository
|
|------- <JEE>
|
|--------<Android>
|
|--------<iPhone>
我需要限制用户对文件夹的权限如下:
• Usera - Read/write - JEE
• UserB - Read/write - Android
• UserC - Read/write - iPhone
我在 gitolite.config 中有以下设置
RW+ Jee/ = UserA
RW+ Android-App/ = UserB
RW+ iPhone-App/ = UserC
以UserA 推送时,我收到以下错误:
remote: FATAL: W refs/heads/master Acme-Repository UserA DENIED by fallthru
remote: error: hook declined to update refs/heads/master
我试过了:
RW+ NAME/Jee/ = UserA
..
AND
RW+ refs/head/Jee/ = UserA
..
但是两者都返回了相同的结果。 可能出了什么问题?我试过this、this和this
更新 - 现在工作配置
在原始作者 Sitaram 在 google 群组上的回答和@vonc 的回答之后 - 现在我有了以下内容,并且工作起来就像一个魅力:
@AllDevelopers = UserA UserB UserC
@Jee = UserA
@Android = UserB
@iPhone = UserC
RW+ = @AllDevelopers
- VREF/NAME/Jee/ = @Android @iPhone
- VREF/NAME/Android-App/ = @Jee @iPhone
- VREF/NAME/iPhone-App/ = @Android @Jee
上面的配置在人类语言中是什么意思-
- @AllDevelopers 组将有权访问存储库,但
- @Android 和 @iPHone 被拒绝访问 Jee 文件夹和子文件夹。
- @Jee 和 @iPhone 开发人员被拒绝访问 Android-App 文件夹和子文件夹。
- @Android 和 @Jee 开发人员被拒绝访问 iPhone-App 文件夹和子文件夹。
【问题讨论】: