На удаленном сервере у меня установлен хук post-receive, чтобы сделать git checkout моего репозитория:
#!/bin/sh
GIT_WORK_TREE=/var/www/<website> git checkout -f
Но когда я выполняю push с моего локального компьютера в git-репозиторий на сервере, я получаю следующие сообщения об ошибках:
remote: error: unable to unlink old '<file>' (Permission denied)
Это появляется много раз, одно сообщение об ошибке почти для каждого файла.
Однако у меня есть файл README.txt, который я могу изменить с помощью git, вот его разрешения:
-rw-r--r-- 1 <serverusername> <serverusername> 2939 Aug 2 10:58 README.txt
Но другие файлы с точно таким же владельцем и такими же правами дают мне эту ошибку.
В другом локальном репозитории для другого веб-сайта у меня есть файлы с именем пользователя на локальном компьютере в качестве владельца, и когда я отправляю на удаленный сервер, он уважает владельца файлов на удаленном сервере и работает как чудо.
Очевидно, это похоже на ошибку, связанную с разрешениями, но я не могу найти способ ее исправить, какие-либо предложения?
sudo chmod -R g+w
папки с ошибками.