Maison > développement back-end > Golang > Comment les versions de sous-modules sont-elles gérées dans un référentiel Go avec plusieurs fichiers go.mod ?

Comment les versions de sous-modules sont-elles gérées dans un référentiel Go avec plusieurs fichiers go.mod ?

Barbara Streisand
Libérer: 2024-10-30 14:02:58
original
651 Les gens l'ont consulté

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

Gestion des versions de sous-modules dans Go

Lorsqu'un référentiel Go contient plusieurs fichiers go.mod, il est crucial de comprendre comment les versions de sous-modules sont gérées. Dans l'exemple fourni, un fichier go.mod existe à la racine et dans le sous-répertoire. Cela soulève la question de savoir comment les versions des sous-modules sont publiées et mises à jour.

Version des sous-modules

Contrairement à l'intuition, les versions des sous-modules ne s'alignent pas nécessairement sur celles du module parent. Ils sont considérés comme des modules indépendants au sein du même référentiel. Par conséquent, la mise à jour du module racine ne met pas toujours à jour le sous-module.

Go Tagging and Release Management

Pour gérer la gestion des versions des sous-modules, Go exploite les balises Git. Les balises servent de marqueurs de version pour des versions spécifiques. Les balises Git hiérarchiques sont utilisées pour marquer les versions de sous-modules. Dans l'exemple donné, la dernière version de Vault est 1.3.3, tandis que la dernière balise pour Vault/Api est 1.0.4.

Mise à jour des versions de sous-modules

Pour mettez à jour le sous-module vault/api, utilisez simplement go get pour récupérer la dernière version :

<code class="go">go get github.com/hashicorp/vault/api</code>
Copier après la connexion

Go détectera et installera automatiquement la dernière version du sous-module sans la spécifier dans go.mod.

Conclusion

Comprendre la gestion des versions des sous-modules est crucial lorsque vous travaillez avec plusieurs fichiers go.mod. Les sous-modules sont des entités indépendantes avec leurs propres mécanismes de gestion des versions, et leur mise à jour nécessite une commande go get distincte sans spécifier explicitement les versions. Les balises Git structurées hiérarchiquement sont utilisées pour marquer les versions spécifiques des sous-modules.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal