Comment installer un package à partir du dépôt github dans Yarn


140

Lorsque j'utilise npm install fancyapps/fancybox#v2.6.1 --save, le package fancybox à la balise v2.6.1 sera installé. Ce comportement est décrit dans la documentation

Je veux demander, comment faire cela avec yarn?

Cette commande est-elle la bonne alternative? Dans les documents sur le fil, il n'y a rien à propos de ce format.

yarn add fancyapps/fancybox#v2.6.1

Réponses:


213

Vous pouvez ajouter n'importe quel référentiel Git (ou tarball) en tant que dépendance à yarnen spécifiant l'URL distante (HTTPS ou SSH):

yarn add <git remote url> installs a package from a remote git repository.
yarn add <git remote url>#<branch/commit/tag> installs a package from a remote git repository at specific git branch, git commit or git tag.
yarn add https://my-project.org/package.tgz installs a package from a remote gzipped tarball.

Voici quelques exemples:

yarn add https://github.com/fancyapps/fancybox [remote url]
yarn add ssh://github.com/fancyapps/fancybox#3.0  [branch]
yarn add https://github.com/fancyapps/fancybox#5cda5b529ce3fb6c167a55d42ee5a316e921d95f [commit]

(Remarque: Fancybox v2.6.1 n'est pas disponible dans la version Git.)


3
mais ne peut pas utiliser le style git @ xxx
Jiang YD

Si l'option SSH était ajoutée à cette réponse, nous pourrions probablement perdre toutes les autres.
toxaq

N'oubliez pas que vous pouvez utiliser le versionnage sémantique! yarn add https://github.com/fancyapps/fancybox.git#semver:^3.0Cela va extraire la dernière version majeure, qui est actuellement 3.5.7.
Elte156

1
L'ajout d'un dossier dist peut également être nécessaire pour résoudre le module.
oligopol le

Pour SSH avec référentiel privé, j'ai trouvé que nous devions ajouter un utilisateur git. Par exemple:yarn add ssh://git@github.com/fancyapps/fancybox#3.0
GusDeCooL

23

Pour les URL de style ssh, ajoutez simplement ssh avant l'url:

yarn add ssh://<whatever>@<xxx>#<branch,tag,commit>

9
Cela a fonctionné pour moi lorsque j'ai yarnrefusé d'honorer la gitsyntaxe commune de l' URL ssh: a fonctionné: yarn add ssh://git@github.com:my-org/my-repo#commit_hashn'a pas fonctionné:yarn add git@github.com:my-org/my-repo#commit_hash
kilogic


9

Pour le référentiel privé GitHub (ou similaire):

yarn add 'ssh://git@github.com:myproject.git#<branch,tag,commit>'
npm install 'ssh://git@github.com:myproject.git#<branch,tag,commit>'

1

J'utilise ce format court pour les référentiels github:

yarn add github_user/repository_name#commit_hash

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.