103

この時点まで私だけが書き込み可能だった既存の git リポジトリ (裸のリポジトリ) があります。foo のすべてのメンバーがプッシュできるように、UNIX ユーザーグループ foo に公開したいと考えています。次のコマンドを使用して、新しいgit リポジトリを簡単にセットアップできることを認識しています。

git init --bare --shared=group repodir
chgrp -R foo repodir

しかし、既存のリポジトリディレクトリに対して同等の操作が必要です。

4

5 に答える 5

125

repodirこれを試して、グループ内のユーザーのために既存のリポジトリを機能させてくださいfoo:

chgrp -R foo repodir                 # set the group
chmod -R g+rw repodir                # allow the group to read/write
chmod g+s `find repodir -type d`     # new files get group id of directory
git init --bare --shared=all repodir # sets some important variables in repodir/config ("core.sharedRepository=2" and "receive.denyNonFastforwards=true")
于 2010-07-13T23:34:10.717 に答える
48

リポジトリ ディレクトリで、次のコマンドを実行します。

git config core.sharedRepository group
chgrp -R foo repodir
chmod -R g+w repodir

編集: よくある混乱に対処するために、groupは実際のキーワードです。これをグループの名前に置き換えることは想定されていません。

于 2012-03-02T17:50:47.143 に答える
1

グループに読み取り/書き込みを許可する上記の回答に加えて、ユーザーをグループに追加する必要もあります (「foo」など)。

sudo usermod -a -G [groupname] [username]

注:存在しない場合は、最初にユーザーを作成する必要があります

于 2016-04-18T18:31:29.107 に答える