さまざまなファイル許可を持つGitクローン
-
29-09-2019 - |
質問
サーバーには、裸のgitリポジトリに保存されている3つの(実際には:数千の)テキストファイルがあります:A.TXT、B.TXT、C.TXT。
- ユーザー「管理者」は、それらすべてを表示/編集する必要があります。
- ユーザー「foo」は「a.txt」と「b.txt」を表示/編集する必要がありますが、「c.txt」のコンテンツを表示することは許可されていません。
- ユーザー「ゲスト」は、「a.txt」を表示/編集することのみを許可する必要があります。
3人のユーザー全員が、編集が許可されているファイルでGitリポジトリをクローンすることができるはずです。
Git(...またはMercurial)でこれを作成する可能性はありますか?
アイデア:ユーザー「Foo」と「ゲスト」のGitのスパースチェックアウト機能を使用して、裸のgitリポジトリの2つのクローンを作成できますか?
他に(より速い)アイデアはありますか?
解決
あなたがすべき:
- 3つの枝があります
- ゲスト(のみ
A.txt
ファイル) - ユーザー(aおよびb.txtファイルを使用)
- 管理者(すべてのファイルを使用)
- ゲスト(のみ
つまり、頻繁にマージして異なるブランチを更新し、異なる変更を伝播します。
プラス、 ギトライト, 、あなたは誰が(ブランチレベルで)を引くことができる/プッシュできるかを制御できます。つまり、次のことを意味します。
- ゲストは引っ張ることができるだけです
guest
ブランチ。 - fooユーザーは
guest
ブランチとusers
ブランチ、プッシュできる間users
ブランチ(またはユーザーにのコンテンツを更新してもらいたい場合は両方のブランチguest
ブランチ)。 - 管理者はすべてのブランチを引っ張る/引っ張ることができます。
所属していません StackOverflow