l'éditeur php Baicao vous propose une introduction aux meilleures pratiques pour gérer deux projets GitHub Go. Au cours du processus de développement, nous devons souvent gérer les dépendances et la collaboration de code entre plusieurs projets. Cet article partagera quelques méthodes et suggestions efficaces pour vous aider à optimiser la structure du projet, à gérer les dépendances, à résoudre les conflits et à améliorer la maintenabilité et l'évolutivité du code. Les développeurs débutants et expérimentés peuvent en bénéficier et améliorer l’efficacité du développement et la qualité des projets. Explorons ensemble ces bonnes pratiques !
Je développe deux projets golang basés sur github, dont l'un dépend de l'autre.
Supposons que j'ai un projet A (github.com/A) qui dépend du projet B (github.com/B). Alors maintenant, j'apporte des modifications au projet B, je pousse le code et j'exécute go get github.com/B
dans le projet A pour obtenir le dernier code du projet B.
Ce processus prend beaucoup de temps et ne me semble pas correct. Je pensais que l'emplacement GO_PATH des fichiers du projet B avait changé, mais il semble que le projet téléchargé GO_PATH soit en lecture seule.
Y a-t-il une meilleure façon de procéder ?
Si votre version de Golang est 1.18+, vous pouvez profiter de la fonctionnalité d'espace de travail pour améliorer votre expérience de développement.
Utilisons votre exemple pour obtenir github.com/A
,它依赖于 github.com/B
.
workspace
cd
dans cd
在 workspace
中,然后 go mod init ./A && go work use ./B
puis go mod init ./A && go work use ./B
entrez <code>workspace
中运行 go 运行 github.com/A
exécutez github.com/A
Le résultat est que dans votre environnement de développement local, vous utiliserez toujours la version locale github.com/B
, il n'y a donc pas besoin de synchronisation à distance.
Si vous utilisez une version précédente de Go, je pense que votre meilleure option est d'écrire des scripts pour automatiser ce processus
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!