2016-05-03 10 views
1

Ich mache ein Django-Projekt, das aus mehreren Apps besteht, und ich möchte eine Versionsnummer für das gesamte Projekt verwenden, die nützlich ist, um den Status des Projekts zwischen jedem Produktionszeitpunkt zu verfolgen.Wie und wo sollte ich eine Versionsnummer in mein Django-Projekt einfügen?

Ich habe gelesen und gegoogelt und ich habe gefunden, wie man eine Versionsnummer für jede Django-App von mir setzt, aber nicht für ein ganzes Projekt.

Ich nehme an, dass die settings.py (in meinem Fall wäre es base.py, weil die Einstellungen für jede Umgebung vererbt werden: Entwicklung, Vorproduktion, Produktion) wäre die ideale Datei für die Speicherung, aber ich würde gern gute Praktiken von anderen Django-Programmierern wissen, weil ich keine gefunden habe.

Vielen Dank im Voraus

Antwort

1

ich, ich glaube nicht, dass ich jemals tun musste, aber die beiden offensichtliche Wahl wäre entweder die Einstellungsdatei, wie Sie angeben, oder alternativ die __init__.py im Hauptprojekt App

+0

Ich studiere es zusammen mit der anderen Antwort und entscheide, welche die beste ist – madtyn

1

Sie benötigen es nicht, um sich auf django zu beziehen, Sie können ein Commit in Ihrer Quellcodeverwaltung markieren, um eine Markierung für eine bestimmte Version (sowie eine separate Verzweigung für Freigaben) bereitzustellen.

Vom docs for git tagging

Git hat die Fähigkeit, bestimmte Punkte in der Geschichte zu markieren, so wichtig zu sein. In der Regel verwenden Benutzer diese Funktion, um Freigabepunkte zu markieren (v1.0 usw.).

Sie konnten die gleiche Versionsnummer System wie Google verwenden, wenn Sie so wollen, die

year.month.day.optional_revision # i.e 2016.05.03 for today 

Dadurch erleichtern würde

bezieht sich auf frühere Versionen verfolgen zurück, da es nicht in überschrieben werden Quellcode nach neueren Versionsnummern.

+0

Für nur die Versionskontrolle Git ist genug, aber ich möchte auch die Version in meiner App anzeigen. Ich werde jedoch auf Ihren Link schauen, weil es interessant ist. – madtyn

+1

@maddyn - Dafür haben wir eine separate Datei product_version.py in der Basis-App erstellt und importieren dann eine Funktion von dort, wo benötigt – Sayse

+0

Eine Funktion? Es ist keine Konstante? Ich könnte ein Quellcodebeispiel verwenden – madtyn