Heim  >  Artikel  >  Backend-Entwicklung  >  Wie werden Submodulversionen in einem Go-Repository mit mehreren go.mod-Dateien verwaltet?

Wie werden Submodulversionen in einem Go-Repository mit mehreren go.mod-Dateien verwaltet?

Barbara Streisand
Barbara StreisandOriginal
2024-10-30 14:02:58487Durchsuche

How are submodule versions managed in a Go repository with multiple go.mod files?

Submodulversionierung in Go verwalten

Wenn ein Go-Repository mehrere go.mod-Dateien enthält, ist es wichtig zu verstehen, wie Submodulversionen verwaltet werden. Im bereitgestellten Beispiel ist eine go.mod-Datei im Stammverzeichnis und im Unterverzeichnis vorhanden. Dies wirft die Frage auf, wie Submodulversionen veröffentlicht und aktualisiert werden.

Submodulversionierung

Entgegen der Intuition stimmen Submodulversionen nicht unbedingt mit denen des übergeordneten Moduls überein. Sie gelten als unabhängige Module innerhalb desselben Repositorys. Daher wird durch die Aktualisierung des Root-Moduls nicht immer auch das Submodul aktualisiert.

Go-Tagging und Release-Management

Um die Versionierung von Submodulen zu verwalten, nutzt Go Git-Tags. Tags dienen als Release-Marker für bestimmte Versionen. Hierarchische Git-Tags werden zum Markieren von Submodulversionen verwendet. Im gegebenen Beispiel ist die neueste Version von Vault 1.3.3, während das neueste Tag für Vault/API 1.0.4 ist.

Submodulversionen aktualisieren

An Aktualisieren Sie das Vault-/API-Submodul. Verwenden Sie einfach „go get“, um die neueste Version abzurufen:

<code class="go">go get github.com/hashicorp/vault/api</code>

Go erkennt und installiert automatisch die neueste Submodulversion, ohne sie in go.mod anzugeben.

Fazit

Das Verständnis der Submodulversionierung ist entscheidend, wenn Sie mit mehreren go.mod-Dateien arbeiten. Submodule sind unabhängige Einheiten mit eigenen Versionierungsmechanismen und ihre Aktualisierung erfordert einen separaten go get-Befehl ohne explizite Angabe von Versionen. Hierarchisch strukturierte Git-Tags werden verwendet, um bestimmte Releases von Submodulen zu kennzeichnen.

Das obige ist der detaillierte Inhalt vonWie werden Submodulversionen in einem Go-Repository mit mehreren go.mod-Dateien verwaltet?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn