Hinzufügen einer Git-Revision zu Binär-Builds in Go
Ein häufiges Bedürfnis in der Softwareentwicklung besteht darin, den Ursprung binärer ausführbarer Dateien zu verfolgen. Dies ist besonders nützlich für die Fehlerbehebung und die Ermittlung der Quellversion, aus der eine Binärdatei erstellt wurde. In Go mag es intuitiv erscheinen, die Revisionsnummer direkt zum Quellcode hinzuzufügen, aber dieser Ansatz wirft Bedenken hinsichtlich einer Änderung der Quelle auf.
Erwägen Sie stattdessen, die Git-Revision während des Build-Prozesses einzubinden. Dieser Ansatz stellt sicher, dass die Binärdatei die bei ihrer Erstellung verwendete Revision widerspiegelt, ohne den Quellcode zu ändern.
Binärdateien mit Git Revision erstellen
Um dies zu erreichen, verwenden Sie die Git-Rev -parse --short HEAD-Befehl zum Abrufen des gekürzten Revisions-Hashs. Als nächstes weisen Sie diesen Wert einer Variablen namens $VERSION in einem Shell-Skript zu.
Deklarieren Sie in Ihrem Go-Quellcode eine Versionsvariable im Hauptpaket. Diese Variable sollte einen String-Datentyp haben.
Schließlich führen Sie während des Erstellungsprozesses den folgenden Befehl aus, um die Versionsinformationen in die Binärdatei einzubetten:
#!/bin/sh VERSION=`git rev-parse --short HEAD` go build -ldflags "-X main.version=$VERSION" myfile.go
Durch Ausführen des Befehls während des build können Sie die Git-Revision dynamisch in die Binärdatei einbetten, ohne den Quellcode zu ändern. Um auf die Revisionsinformationen zuzugreifen, rufen Sie einfach den Wert der Versionsvariablen in Ihrem Go-Programm ab.
Das obige ist der detaillierte Inhalt vonWie kann ich eine Git-Revision in Go-Binärdateien einbetten, ohne den Quellcode zu ändern?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!