リモートサーバーでは、リポジトリのgitチェックアウトを行うために受信後フックを設定しています。
#!/bin/sh
GIT_WORK_TREE=/var/www/<website> git checkout -f
しかし、ローカルマシンからサーバーのgitリポジトリにプッシュすると、次のエラーメッセージが表示されます。
remote: error: unable to unlink old '<file>' (Permission denied)
これは何度も表示され、ほとんどすべてのファイルに1つのエラーメッセージが表示されます。
ただし、gitを使用して変更できるREADME.txtファイルがあります。そのアクセス許可は次のとおりです。
-rw-r--r-- 1 <serverusername> <serverusername> 2939 Aug 2 10:58 README.txt
しかし、まったく同じ所有者と同じ権限を持つ他のファイルは、私にそのエラーを与えます。
別のWebサイトの別のローカルリポジトリに、ローカルマシンのユーザー名が所有者であるファイルがあり、リモートサーバーにプッシュすると、ファイルのリモートサーバーの所有者が尊重され、チャームのように機能します。
明らかに、アクセス許可に関連するエラーのようですが、修正する方法が見つかりません。何か提案はありますか?