Gitで共同作業を行うための備忘録
share
- TOP
- Old Archives
- Gitで共同作業を行うための備忘録
結構問題が多くて苦労したので、記録しておく。
なお、sshを利用した認証。
まずベアリポジトリをsharedで行う。
git init --bare --shared /path/to/repos.git
この場合、/path/to/
はグローバルにアクセス可能でないと、リポジトリにアクセスできない。
この/path/to/repos.git
がいわばマスターリポジトリとなる。各開発者はこれをクローンする。
git clone ssh://localhost/path/to/repos
ここが非常に重要。もしsshではなくファイルを直接クローンしてしまうと、スティッキービットを立てていても不適正なパーミッションが設定され、取り扱えなくなってしまう。 そのため、例えローカルなファイルであっても、共有する場合はSSH経由にしないとうまくいかない。
また、忘れがちなので。最初にpushする時だけ
git push origin master
しておかないといけない。だいたいがgit push
とgit pull
だけでこなすため、同じエラーが出て戸惑うことになる。