root以外でgit commit しようとしたら '.git/COMMIT_EDITMSG': 許可がありません
昨日のgitコマンドの続き。
仕事でgitサーバーからプロジェクトをcloneしてローカル
用に権限周りをrootから自分に修正して、git commit しようと
したら下記エラーが発生。
error: insufficient permission for adding an object to repository database .git/objects
fatal: could not open '.git/COMMIT_EDITMSG': 許可がありません
git status とか git add は問題ないのに何で?
ってことで、調べたことを備忘録としてメモ。
ネットで検索すると、Linuxサーバー上でマルチアカウントでgitを使って
いると稀に発生するエラーらしい。たしかに。初めて見たエラー。
git commitする時だけsudoをつけて実行すればいいんだが、でも
そこだけ管理者権限は使いづらいということで。
取り急ぎ設定した手順は以下。
[手順]
1. ファイルの所有者とグループを変更。
% sudo chown -R user:group .git
2. ファイル権限を変更。
% sudo chmod -R 755 .git
[参考サイト]
※もちろん、根本的に修正する方法もある。
※実行環境とは別管理なので以下サイトはあとで詳しく。
[参考サイト]