Wie behebt man die verweigerte Berechtigung für das .git/-Verzeichnis, wenn man git push durchführt?
Lesezeit: 1 Minute
xylar
Ich habe auf meinem Server ein Git-Repository eingerichtet. Erstellt einen neuen Benutzer ‘git’. Meine Repos befinden sich in /srv/git/example.git. Ich war in der Lage git remote add origin git@domain/srv/git/example.git dann habe ich meine Änderungen hinzugefügt und übernommen.
Aber als ich es versucht habe git push origin master es ist fehlgeschlagen am:
fatal: temporäre Datei kann nicht erstellt werden: Berechtigung verweigert’ und ‘fatal: sha1-Datei-Schreibfehler: ungültiges Argument’
Auf dem Server habe ich ausgeführt:
sudo chown -R git:git /srv/git/`
Dies hat mein Problem behoben, aber ich frage mich, ob dies die richtige Vorgehensweise war?
Auf dem Server habe ich sudo chown -R git:git /srv/git/ ausgeführt – das hat mein Problem behoben, aber ich frage mich, ob dies das Richtige war?
Absolut. Das Problem war bisher, dass der git-Benutzer, mit dem Sie sich über SSH anmelden, nicht in das Repository schreiben konnte.
Abhängig von Ihren Anforderungen können Sie verschiedene Kombinationen von Benutzern und SSH-Schlüsseln oder eines der vielen zusätzlichen Programme (Gitolite usw.) in Betracht ziehen, die verwendet werden können, um den Zugriff genauer zu kontrollieren.
Korrigieren Sie zuerst die Dateiberechtigungen in Ihrer Fernbedienung .git dir zB