hogeユーザが
git push origin masterとやって共有リポジトリにプッシュした後、tadasukeユーザが
git pull orgin masterで更新を落としてくることはできるのだけど、さらに修正して
git push origin masterとやると、パーミッションエラー的なメッセージが出てプッシュできない。
共有リポジトリの
/var/git_repos/game.gitのパーミッションは775に設定していて、hogeとtadasukeは同じグループなのに…
どうもpushしたタイミングでファイルのパーミッションが書き換わってしまうらしい。
pushする度にファイルのパーミッションを変更するのは面倒すぎるので色々調べてみたところ、リポジトリを作る際に
--shared=trueオプションを設定するとリポジトリが共有設定になって、同じグループのユーザであればpushしまくっても問題なくなるらしい。
ただ、すでにリポジトリは作成済みなわけで、新たに作り直すのはできることならご遠慮願いたい。
で、さらに調べたところ、
/var/git_repos/game.git/configの[core]のところに
sharedrepository = 1と書いてやれば、共有リポジトリになることが判明。
もしかすると
sharedrepository = trueのほうが、正しい書き方かもしれないけど・・・
というわけで、今度こそイカした開発環境ができましたー。
0 件のコメント:
コメントを投稿