【问题标题】:FATAL: W refs/heads/master DENIED by fallthru - Gitolite Folder permission setup致命:W refs/heads/master 被 fallthru 拒绝 - Gitolite 文件夹权限设置
【发布时间】: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  
..

但是两者都返回了相同的结果。 可能出了什么问题?我试过thisthisthis

更新 - 现在工作配置

在原始作者 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 文件夹和子文件夹。

【问题讨论】:

    标签: git gitolite


    【解决方案1】:

    保护文件或目录由 VREF 完成(请参阅gitolite doc

    VREF/NAME/xxx
    

    在你的情况下(VREF/NAME doc):

    @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 被视为“additional deny rule”,因此您需要先允许访问 (RW+ @users)使用 VREF 规则限制访问。
    (刚看到Sitaram Chamarty——gitolite的作者——answer on groups.google.com

    【讨论】:

    • 谢谢。我已经在 Gitolite Google 群组上发布了这个,Sitaram 已经回答了。但我也接受你的回答,因为答案非常好。请参阅我关于它现在如何工作的问题的更新。再次感谢。
    • @avijendr 我刚刚看到了。我还看到 Sitaram 不太喜欢 Stack Overflow ;) (plus.google.com/115609618223925128756/posts/Zoo1EWCxWBE)
    • 是的,你是对的,他不太喜欢 SO。他有他的理由,我认为没问题。他告诉我你将在 SO :) 中回答。再次感谢 VonC。
    猜你喜欢
    • 1970-01-01
    • 2012-05-12
    • 1970-01-01
    • 1970-01-01
    • 2022-08-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-10-11
    相关资源
    最近更新 更多