Maison >développement back-end >Golang >Dois-je soumettre le répertoire des fournisseurs de mon projet Go au contrôle de version ?

Dois-je soumettre le répertoire des fournisseurs de mon projet Go au contrôle de version ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-11 15:51:13572parcourir

Should I Commit My Go Project's Vendor Directory to Version Control?

Contrôle de version du répertoire des fournisseurs dans le développement Go

Lors de la gestion des dépendances Go avec l'outil dep, les développeurs sont confrontés à la décision de s'engager ou non le répertoire du fournisseur dans le contrôle de version ou exécutez dep Ensure après avoir extrait un référentiel.

Pour fournir des conseils à ce sujet, la FAQ de l'outil dep aborde explicitement la question :

Dois-je valider mon répertoire de fournisseurs ?

La FAQ reconnaît que la décision appartient en fin de compte au développeur, mais elle souligne à la fois les avantages et les inconvénients de chaque approche :

Engagement du vendeur Annuaire :

  • Avantages :

    • Garantit des builds véritablement reproductibles en protégeant contre les modifications en amont et les réécritures de l'historique.
    • Élimine le besoin de garantie après la plupart des opérations, y compris la récupération, le clonage et fusion.
  • Inconvénients :

    • Augmente la taille du référentiel, ce qui peut devenir important.
    • Ajoute Le répertoire des fournisseurs devient PR diffs lorsque Gopkg.lock est modifié, bien que les fichiers des fournisseurs soient masqués par défaut sur GitHub.

Exécution dep Ensure après l'extraction :

  • Avantages :

    • Maintient un référentiel plus petit size.
    • Mise à jour automatiquement le fournisseur lors de l'extraction du référentiel, garantissant ainsi la cohérence.
  • Inconvénients :

    • Nécessite une étape de construction supplémentaire après l'extraction d'un référentiel.
    • Peut entraîner des modifications du répertoire des fournisseurs qui ne sont pas visibles dans diffs.

En fin de compte, la meilleure pratique dépend des exigences spécifiques du projet. Les développeurs qui donnent la priorité à la reproductibilité et évitent les étapes de construction inutiles peuvent choisir de valider le répertoire des fournisseurs. Cependant, ceux qui s'inquiètent de la taille du référentiel et préfèrent automatiser la synchronisation des dépendances peuvent préférer exécuter dep Ensure après l'extraction.

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:
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