/bin/sh
# groupadd gitusers # 適当なグループ作成
# usermod -G gitusers user_account # 対象のuser全員をgroupに追加
# mkdir /path/to/project.git
# chgrp -R gitusers /path/to/project.git
# cd /path/to/project.git
# git --bare init --shared
$ git clone ssh://host/path/to/project.git # ssh login出来る人だけアクセス可能
ref: http://nksg.org/archives/109
もし、--sharedを付け忘れたり、groupの書き込み権限付与に失敗して、rwできない場合は以下
/bin/sh
# chgrp -R gitusers /path/to/project.git
# cd /path/to/project.git
# git config core.sharedRepository group
# chmod -R g+w HEAD
# chmod -R g+w config
# chmod -R g+w description
# chmod -R g+ws hooks
# chmod -R g+ws info
# chmod -R g+ws objects
# chmod -R g+ws refs
ref: http://d.hatena.ne.jp/kuma8/20110115/1295100616
MAC OS上にshared repo作るときは、
- システム環境設定→ユーザとグループ
- +ボタンを押して、ユーザとグループを必要に応じて作成
- 作成したグループを選択し、メンバーを追加(チェックボックス)
(コマンドラインでは、dsclというコマンドがあるにはあるがGUIからやった方が無難)
ref: http://d.hatena.ne.jp/ksaito11/20110508/1304756757 - システム環境設定→共有
- リモートログインを選択し、許可するユーザをチェック
ここで許可されたユーザだけsshできるようになる - 後は、同じようにgit shared repoを作る
以上