Django migrations, Versionskontrolle und verschiedene Datenbanken

Django, Flask, Bottle, WSGI, CGI…
Antworten
SnakeBite
User
Beiträge: 46
Registriert: Mittwoch 4. März 2009, 18:26

Hallo.

Ich habe verschiedene Django Entwicklungssysteme: Windows, Linux, Mac und einen Test-vServer
Windows, Mac und Linux laufen mit der Standard sqlite DB und der Test-vServer läuft mit nginx, postgres und gunicorn.
Bisherige "Versionskontrolle" = NAS

Nun also meine Fragen:

1. Verständnisfrage: Wenn ich eine neue VM erstelle und die Daten rein kopiere und dann "migrate"-e. Dann werden die (vielen schon vorhandenen Migrations) alle der Reihe nach abgearbeitet und ich habe dann den selben Stand wie auf den anderen Systemen auch. Ist das so korrekt?

2. Verständnisfrage: Was wäre jedoch, wenn ich den migrations Ordner nicht mit auf die neue VM kopiere und ein "makemigrations" mit anschliessendem "migrate" ausführe? (Unter der Annahme dass die models.py die exakt selbe wie auf den anderen PCs ist). Komme ich dann immer noch auf den exakt gleichen Stand?

Es gibt noch einige Folgefragen, gerade im Bezug zu einer richtigen Versionskontrolle. Aber im Sinne der Übersichtlichkeit, machen wir das lieber Schritt für Schritt.

Vielen Dank schonmal!
DasIch
User
Beiträge: 2718
Registriert: Montag 19. Mai 2008, 04:21
Wohnort: Berlin

1. Ja.
2. Nein. Das wäre aber ohnehin schlecht weil du dann anderen Code ausführst als du entwickelt/getestet hast.

Wegen letzterem solltest du übrigens auch Postgres während der Entwicklung nutzen. NAS ist keine Versionskontrolle auch nicht mit beiden Augen zudrücken. Nimm git.
Antworten