Cómo instalar el paquete del repositorio de github en Yarn

140

Cuando lo uso npm install fancyapps/fancybox#v2.6.1 --save, se instalará el paquete fancybox en la etiqueta v2.6.1. Este comportamiento se describe en documentos

Quiero preguntar, ¿cómo hacer esto yarn?

¿Es este comando la alternativa correcta? En yarn docs no hay nada sobre este formato.

yarn add fancyapps/fancybox#v2.6.1

Zachara plateada
fuente

Respuestas:

213

Puede agregar cualquier repositorio Git (o tarball) como dependencia al yarnespecificar la URL remota (ya sea HTTPS o 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.

Aquí hay unos ejemplos:

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]

(Nota: Fancybox v2.6.1 no está disponible en la versión Git).

Kasiriveni
fuente
3
pero no puede usar git @ xxx style
Jiang YD
Si se agregó la opción SSH a esta respuesta, probablemente podríamos perder todos los demás.
toxaq
¡No olvides que puedes usar versiones semánticas! yarn add https://github.com/fancyapps/fancybox.git#semver:^3.0Esto extraerá la última versión principal, que actualmente es 3.5.7.
Elte156
1
También puede ser necesario agregar una carpeta dist para resolver el módulo.
oligopol
Para SSH con repositorio privado, descubrí que necesitamos agregar usuarios git. por ejemplo:yarn add ssh://[email protected]/fancyapps/fancybox#3.0
GusDeCooL
23

Para las URL de estilo ssh solo agregue ssh antes de la url:

yarn add ssh://<whatever>@<xxx>#<branch,tag,commit>
Tyler
fuente
9
Esto funcionó para mí cuando me yarnnegué a honrar la gitsintaxis común de url ssh: funcionó: yarn add ssh://[email protected]:my-org/my-repo#commit_hashno funcionó:yarn add [email protected]:my-org/my-repo#commit_hash
kilogic
9

Para el repositorio privado de GitHub (o similar):

yarn add 'ssh://[email protected]:myproject.git#<branch,tag,commit>'
npm install 'ssh://[email protected]:myproject.git#<branch,tag,commit>'
Eduardo Cuomo
fuente
1

Utilizo este formato corto para repositorios de github:

yarn add github_user/repository_name#commit_hash

betoharres
fuente