0
votes

Aller obtenir une installation à partir d'une fourchette locale

J'essaie d'installer un package Go à partir d'un répertoire local (essentiellement, j'ai vérifié et appliqué une demande de traction en attente).

$ go install /Users/me/workspaces/go/somepackage
[] cannot import absolute path


1 commentaires

Essayez-vous d'installer un colis principal ou une dépendance? Si c'est un package , il suffit de CD dans une installation, il n'y a rien à GO GET . Si c'est une dépendance, elle devrait déjà être dans GOPATH ou utiliser remplacer dans go.mod . Les paquets ne sont jamais mentionnés avec un chemin local.


3 Réponses :


0
votes

Autant que je sache que vous ne pouvez pas faire cela avec go get , BUR, vous pouvez copier le répertoire à gopath manuellement. Si vous avez choisi exemple.com/somepackage , puis copiez / users / me / espaces de travail / go / pipackage à ~ / go / src / example.com / pipackage < / code> ou ./ Vendeur / exemple.com / Quelconcackage .

Cela étant dit, la meilleure solution consiste généralement à héberger le code fourchu quelque part, puis utilisez ce chemin d'importation. Des outils de décence tels que DEP et les modules prennent en charge la recherche d'une origine différente pour les packages.


1 commentaires

Mais cela saute une installation de dépendance si je suis correct.



0
votes

Je pourrais me tromper et il existe peut-être une solution de contournement

Go Documentation sur CMD / Go / # HDR-REMOTE_IMPORT_PATHS dit: P>

Les systèmes de contrôle de version pris en charge sont: p>

https://example.org/pkg/foo?go-get=1 (preferred)
http://example.org/pkg/foo?go-get=1  (fallback, only with -insecure)


0 commentaires

1
votes

Si vous souhaitez simplement utiliser une branche différente (votre branche de relations publiques), vous pouvez continuer à utiliser le chemin d'importation d'origine.

  • GO Obtenez le package d'origine en premier.
  • Allez dans le package téléchargé dans votre système de fichiers local CD $ GOPATH / PKG /
  • à partir de votre cache de colis local, passez à la branche que vous souhaitez tirer de. Git Checkout
  • maintenant go get -u

    Si le package est disponible localement, allez recevoir une mise à jour simplement le dernier code de la succursale que votre colis local est coqueluté.


1 commentaires

J'ai fini par installer un autre package car le package d'origine a également été brisé à l'installation. Mais cela semble être une réponse à ma question (+1).