Ich bin auf ein Problem gestoßen, das mich lange brauchte, um eine Lösung zu finden, und es gelang mir immer noch nicht, eine Lösung zu finden.
Das Problem, das ich hatte, ist 'DatabaseError:' Versuch, eine readonly-Datenbank zu schreiben, als ich versuchte, meine Website über Git auf einem Django-Hosting bereitzustellen.
Es scheint, als würde git die Erlaubnis meiner Dateien von 777 auf 755 ändern. Aber immer wenn ich mein Projekt begehe, wird diese Änderung bestehen bleiben. Ich muss jedoch noch etwas in meine Datenbank (SQLite-Datenbank) schreiben.
Hat jemand einen Vorschlag, meinen git zu konfigurieren, um den Berechtigungsmodus bei jedem Commit beizubehalten?
Kurz gesagt, Sie können nicht.
Es gibt Projekte wie etckeeper, die es automatisch machen, oder Sie können ein kleines Hook-Skript schreiben, das die Berechtigungen repariert (was ich wahrscheinlich tun würde).
Wenn Sie beispielsweise etwas festlegen:
%Vor% Um zB scripts/fix_permissions/
, dann führen Sie es als Post-Receive Hook durch simlinking es in .git/hooks/post-receive
auf dem Server.
Tags und Links django database git permissions