Auf einem Dateisystem verfügt jeder Ordner und jede Datei über eigene Dateirechte. Grob gesagt, nur der Besitzer oder Gruppenmitglieder dürfen auf die Datei zugreifen und diese verändern. In bestimmten Fällen ist es unvermeidbar, dass auch Fremde System Benutzer die Datei bearbeiten sollen dürfen. Diesen Falle kenne ich vor allem bei Webprojekte, in denen bestimmte Prozesse Dateien in Export Ordner anlegen oder Schnittstellen Dateien verarbeiten.

Kürzlich hatte ich genau solchen Fall, dass Dateirechte nach der Aktualisierung vom Projekt (via git pull) zurückgesetzt worden sind. Einige Export Ordner hatten nach dem Ausführen von git pull immer wieder falsche Dateirechte erhalten. Dadurch haben sich letztendlich Prozesse aufgehangen und die Log Dateien liefen voll.

GIT Config anpassen

Zur zukünftigen Vermeidung des Problems habe ich mir die Git Dokumentationen vorgenommen. Hier habe ich eine Einstellung gefunden, die genau dieses Problem behebt. Über die Git interne Konfiguration von core.FileMode ist es möglich Git anzuweisen, das Dateirechte nicht berücksichtigt werden sollen.

Der Befehl muss einmal ausgeführt werden. Mit dem Zusatz "--global" gilt die Änderung systemweit.

git config core.fileMode false

Nachdem umstellen von "core.fileMode" auf "false" waren die Dateirechte nach der nächsten Aktualisierung auch gleich geblieben. Vielleicht habr ihr noch weitere Ideen oder Ansätze zu diesem Problem in petto.