Utiliser « go get » sur un référentiel Git personnel : un guide complet
Le défi
Tenter de rendre un package disponible pour « aller le chercher » sur un référentiel Git personnel entraîne souvent le message d'erreur « chemin d'importation non reconnu ». Cet article fournit une solution complète à ce problème.
Comprendre la balise META
Go nécessite une balise META dans la page HTML racine du référentiel Git qui spécifie le package chemin d'importation et URL du référentiel. La syntaxe est la suivante :
<meta name="go-import" content="import_path git repo_url">
Configuration du serveur
Pour que la fonctionnalité "go get" fonctionne, le serveur hébergeant le dépôt Git doit être configuré pour renvoyer la balise META lorsqu'une requête est effectuée avec le paramètre "?go-get=1".
Configuration nginx recommandée
La règle de réécriture nginx suivante peut être utilisé pour y parvenir :
location ~ "(/[^/]+/[^/]+)(/.*)?" { if ($arg_go-get = "1") { echo '<html><head><meta name="go-import" content="my.domain.com git git+ssh://[email protected]"/></head></html>'; } try_files $uri $uri/index.html $uri.html @gitlab; }
Cette règle suppose un accès SSH au référentiel Git. Si HTTPS est utilisé, modifiez l'URL en conséquence.
Exemple de balise META
Demande de "http://mygit.server/group/project?go-get=1 " doit renvoyer la balise META suivante :
<meta content='mygit.server/group/project git git+ssh://[email protected]/group/project.git' name='go-import'>
Test du package
Après avoir configuré le serveur, vous pouvez vérifier si le package est disponible pour "aller chercher" en exécutant :
<code class="Bash">go get example.com/user/package</code>
Cette commande devrait réussir à télécharger et installer le package.
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!