2016-05-09 8 views
0

Ich suche nach einer Möglichkeit, eine bereitgestellte Software mit dem entsprechenden Commit abzubilden. Der Benutzer klickt auf Hilfe -> Info und der Dialog enthält die Hash-Nummer.Mapping zwischen Software-Version und Commit-Hashes?

Gibt es eine Möglichkeit, dies zu tun?

Um ehrlich zu sein, denke ich nicht. Wie stellen Sie also eine Verbindung zwischen Ihren Commits und Ihrer eingesetzten Software her?

+0

Verwenden Sie einen Build-Server? – dubes

+0

@schotter Es ist in vielerlei Hinsicht möglich. Z.B. Betten Sie den Hash zur Kompilierzeit ein. Aber ohne mehr über Ihr Setup zu wissen, ist es schwierig zu entscheiden, welcher Weg für Sie am besten ist. – Biffen

+0

Keine Zuordnung erforderlich. Verwenden Sie Tags. – choroba

Antwort

0

tags sind Ihre Freunde, aber die manuelle Pflege ist schmerzhaft. Da Git oder irgendein SCM-Tool im Idealfall Ihren Quellcode und nicht das entschlüsselbare Artefakt aufspüren würde, benötigen wir eine Art externe Hilfe, um dies zu injizieren. Die gute Art und Weise ist ein Build-Tool oder einen Build-Server (Details siehe unten) zu verwenden, aber wie bei fast allem mit git, gibt es einen Hack (see this answer)

Releasing

Geben Sie für jede "Freigabe" Plugins, damit sie es für Sie pflegen können, verwende ich in meinem aktuellen Projekt die Axion Release Plugin zur Pflege der Versionen.

die Version

In unserem Webapp wir zeigen die "Version" in der Fußzeile und auch die git commit Hash angezeigt, die in der Seite versteckt. Diese können von einem Build-Server wie Bamboo oder Jenkins oder sogar mit den Build-Tools Maven oder Gradle leicht in die Manifest- oder Eigenschaftendatei eingefügt werden.

1

Dies ist sehr einfach zu tun.

Während des Bereitstellungs- oder Erstellungsschritts benötigen Sie eine Möglichkeit, Git in der Befehlszeile abzufragen und den neuesten Festschreibungshash zu extrahieren. Derselbe Prozess muss den Hash in einer Datei speichern, für die der Anwendungscode programmiert wurde. Viel Glück!

Verwandte Themen