17

サーバーにgitリポジトリを設定しました。新しいユーザー「git」を作成しました。私のリポジトリはにあり/srv/git/example.gitます。git remote add origin git@domain/srv/git/example.gitその後、変更を追加してコミットすることができました。

しかし、私が試しgit push origin masterたとき、失敗しました:

致命的:一時ファイルを作成できません:許可が拒否されました'および'致命的:sha1ファイル書き込みエラー:無効な引数'

私が実行したサーバーで:

sudo chown -R git:git /srv/git/`

これで問題は解決しましたが、これが正しいことだったのでしょうか。

4

2 に答える 2

21

サーバーで sudo chown -R git:git /srv/git/ を実行しました - これで問題は解決しましたが、これが正しいことだったのでしょうか?

絶対。以前の問題は、SSH 経由でログインしている git ユーザーがリポジトリに書き込めないことでした。

必要に応じて、ユーザーと SSH キーのさまざまな組み合わせ、またはアクセスをより細かく制御するために使用できる多くの追加プログラム (gitolite など) の 1 つを検討することができます。

于 2011-06-12T12:09:19.160 に答える