2017-12-06 3 views
1

すべての開発者がリポジトリにアクセスするように設定したいのですが、ある特定のファイルは特定のユーザーだけが変更する必要があります。vrefは新しいブランチを拒否します

RWCD        = @developer 
RW+ refs/tags     = @developer 
RW+ VREF/NAME/version.properties = @versionPropertyModifier 
- VREF/NAME/version.properties = @all 

これは、すべて正常に動作しますが、1つの問題がある: @versionPropertyModifierグループのメンバーではないいずれかの開発者がプッシュがversion.properties VREFにリンクして拒否された新しいブランチをプッシュしたいと考えています。

私のルールセットには何が間違っていますか?

答えて

0

example for Vref/NAMEがまったく同じではありません。

repo foo 
     RW+        = @senior_devs 
     RW        = @junior_devs 

     - VREF/NAME/Makefile   = @junior_devs 

シニアDEVが押すと、VREFは全く呼び出されません。ジュニアDEVが押したときしかし、VREFが呼び出され、そしてそれはこのように見て、仮想参照文献として変更されたファイルのリストを返します。

VREF/NAME/file-1 
VREF/NAME/dir-2/file-3 
...etc... 

これらの参照文献のそれぞれは、アクセスルールと照合されます。それらのうちの1つがMakefileである場合、返されたref(VREF/NAME/Makefile)は拒否ルールと一致し、プッシュを強制終了します。だからあなたの場合

RWCD        = @developer 
RW+ refs/tags     = @developer 
- VREF/NAME/version.properties = @versionPropertyModifier 
+0

あなたの答えてくれてありがとうしかし、その構成は、周りだけで、他の方法です。グループ "@versionPropertyModifier"のユーザーは、ファイルversion.propertiesを変更できません。しかし、それは:グループ "@versionPropertyModifier"のユーザーだけがversion.propertiesファイルを変更できるようにする必要があり、@allはブランチを作成してプッシュできるはずです。 – MeMeMax

+0

@MeMeMaxここで述べたように(https://stackoverflow.com/a/29840269/6309)、そこには(http://gitolite.com/gitolite/cookbook/#access)、あなたは 'gitolite acces'を試しましたか?ルールをデバッグしますか? – VonC

+0

デバッグしようとしましたが、解決策には出ませんでした。私はVREF/NAME_NCが私が探しているものだと思うが、まだわからない。最初に私たちのGitoliteバージョンをアップグレードする必要があります。 – MeMeMax

関連する問題