Git push error: Unable to unlink old (Permission denied)
Na zdalnym serwerze mam skonfigurowany hook post-receive w celu dokonania kasy git z mojego repozytorium:
#!/bin/sh
GIT_WORK_TREE=/var/www/<website> git checkout -f
Ale kiedy wykonuję push z mojego lokalnego komputera do repozytorium git na serwerze, dostaję następujące komunikaty o błędach:
remote: error: unable to unlink old '<file>' (Permission denied)
To pojawia się wiele razy, jeden komunikat o błędzie dla prawie każdego pliku.
Jednak mam README.plik txt, który mogę zmienić używając Gita, oto jego uprawnienia:-rw-r--r-- 1 <serverusername> <serverusername> 2939 Aug 2 10:58 README.txt
Ale inne pliki z dokładnie ten sam właściciel i te same uprawnienia, daj mi ten błąd.
W innym lokalnym repozytorium dla innej strony, mam pliki z nazwą użytkownika mojej lokalnej maszyny jako właściciela, a kiedy wciskam do zdalnego serwera, szanuje to właściciela zdalnego serwera plików i działa jak urok.
Oczywiście wydaje się, że błąd związany z uprawnieniami, ale nie mogę znaleźć sposobu, aby go naprawić, jakieś sugestie?
11 answers
Kiedy musisz odłączyć plik, musisz mieć uprawnienia 'w' dla katalogu, w którym jest plik, a nie dla pliku...
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-08-02 09:14:46
sudo chmod -R ug+w .;
To polecenie rozwiązałoby problem. Daje uprawnienia do zapisu do folderu.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-02-04 21:23:01
Jeśli używasz dowolnego IDE, najprawdopodobniej problem polega na tym, że plik został użyty przez jakiś proces. Jakby twój tomcat używał tego pliku. Spróbuj zidentyfikować ten konkretny proces i zamknąć go. To powinno rozwiązać twój problem.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2015-10-16 21:44:18
Miałem ten sam problem i Żadne z powyższych rozwiązań nie działało dla mnie. Usunąłem ten folder. Wtedy:
git reset --hard
Usunąłem wszystkie pliki, aby wyczyścić status gita, a następnie zrobiłem:
git pull
W końcu zadziałało.
Uwaga: Jeśli folder był na przykład folderem publicznym z plikami kompilacji, pamiętaj, aby przebudować Pliki
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-01-17 09:09:40
FWIW - miałem podobny problem i nie jestem pewien czy to go złagodziło( poza uprawnieniami mod): zamykanie Eclipse, które używało gałęzi z tym problemem.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-15 21:35:59
To stare pytanie, ale może to pomóc użytkownikom komputerów Mac.
Jeśli kopiujesz pliki z Time Machine ręcznie, zamiast przywracać je za pomocą Time Machine, doda ACLs do wszystkiego, co może zepsuć Twoje uprawnienia.
Na przykład sekcja tego artykułu , która mówi "Jak naprawić uprawnienia do plików Mac OS X" pokazuje ,że "każdy" ma własne uprawnienia, co wszystko psuje:
Musisz usunąć ACLs z tych katalogów/plików. ta odpowiedź Super Usera wchodzi w to, ale oto Komenda:
sudo chmod -RN .
Wtedy możesz upewnić się, że katalogi i pliki mają odpowiednie uprawnienia. Używam 750
do katalogów i 644
do plików.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-03-20 10:18:27
Dostaję ten błąd i inne dziwne błędy git, gdy mam uruchomiony serwer (w Intellij). Zatrzymanie serwera i ponowne wypróbowanie polecenia git często naprawia to dla mnie.
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-07-28 12:58:10
git reset --hard
Pracował dla mnie
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-24 19:40:57
Niektóre pliki są zabezpieczone przed zapisem, które nawet git nie może nadpisać. Zmień uprawnienia folderu, aby umożliwić zapis np. sudo chmod 775 foldername
And then git pull again
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2018-03-09 04:47:33
Pamiętaj również, aby sprawdzić uprawnienia katalogu głównego!
Możesz znaleźć:
drwxr-xr-x 9 not-you www-data 4096 Aug 8 16:36 ./
-rw-r--r-- 1 you www-data 3012 Aug 8 16:36 README.txt
-rw-r--r-- 1 you www-data 3012 Aug 8 16:36 UPDATE.txt
I pojawi się błąd "Odmowa uprawnień".
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2016-08-08 14:41:27
Myślę, że problem może być z własnością do folderu, więc ustaw go na bieżącą własność użytkownika
Sudo chown - r your_login_name / path / to / folder
Rozwiązanie znajdziesz tutaj
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-10-29 17:56:06