我在Amazon上托管了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
..更新-现在正在工作的配置
在原著作者Sitaram在谷歌群组上的回答和@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 在人类语言中,上述结构意味着什么-
发布于 2014-10-19 05:51:12
对文件或目录的保护是由弗雷夫完成的(参见海泡石博士)
VREF/NAME/xxx在您的例子中(文档):
@users = UserA UserB UserC
repo Acme-Repository
# allow pushing to any branch for any paths
RW+ = @users
# except for those specific paths:
- VREF/NAME/Jee/ = UserA
- VREF/NAME/Android-App/ = UserB
- VREF/NAME/iPhone-App/ = UserC因为VREF被认为是"附加拒绝规则",所以在使用VREF规则限制访问之前,您需要先允许访问(RW+ @users)。
(刚刚看到了西塔拉姆·查马蒂 -“珍珠岩”的作者- 在groups.google.com上回答)
https://stackoverflow.com/questions/26445142
复制相似问题