W zdalnym serwerze mam okres po otrzymywać hak ustanowiony w celu dokonania wymeldowania git mojego repozytorium:błąd Push Git: Nie można odłączyć stary (Permission denied)
#!/bin/sh
GIT_WORK_TREE=/var/www/<website> git checkout -f
Ale kiedy robię push z mojego komputera lokalnego do repozytorium git na serwerze, mam następujących komunikatów o błędach:
remote: error: unable to unlink old '<file>' (Permission denied)
pojawia się wiele razy, jeden komunikat dla prawie każdego pliku.
Jednak mam plik readme.txt, że jestem w stanie zmienić za pomocą git, tutaj są jego uprawnienia:
-rw-r--r-- 1 <serverusername> <serverusername> 2939 Aug 2 10:58 README.txt
Ale inne pliki z dokładnie tego samego właściciela i samymi uprawnieniami, daj mi ten błąd .
W innym lokalnym repozytorium dla innej witryny, mam pliki z moją nazwą użytkownika lokalnego komputera jako właścicielem, a kiedy przekazuję na serwer zdalny, szanuje on właściciela serwera zdalnego i działa jak czar.
Oczywiście wydaje się błąd związany z uprawnieniami, ale nie mogę znaleźć sposobu, aby to naprawić, żadnych sugestii?
Rzeczywiście to był problem, naprawiłem go za pomocą 'sudo chmod -R g + w' ciągu winnych folderach. – rfc1484
dzięki OMG. Było tak denerwujące, że uprawnienia myślące były poprawne w pliku. Ma sens, że aktualizacje są bardziej podobne do akcji 'mv' niż tylko nadpisują. – doublejosh
Zmiana uprawnień dir działała dla mnie (dziękuję!), Ale to dziwne, ponieważ mogłem ręcznie nadpisać dane pliki przez sftp bez żadnych problemów. Dziwne, że kiedy git próbował zrobić to samo, nie mógł. –