Como instalar o pacote a partir do github repo no Yarn

140

Quando eu uso npm install fancyapps/fancybox#v2.6.1 --save, o pacote fancybox na tag v2.6.1 será instalado. Esse comportamento é descrito nos documentos

Eu quero perguntar, como fazer isso yarn?

Este comando é a alternativa correta? No yarn docs não há nada sobre esse formato.

yarn add fancyapps/fancybox#v2.6.1

Zachara de prata
fonte

Respostas:

213

Você pode adicionar qualquer repositório Git (ou tarball) como uma dependência yarn, especificando a URL remota (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.

aqui estão alguns exemplos:

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: o Fancybox v2.6.1 não está disponível na versão Git.)

Kasiriveni
fonte
3
mas não pode usar git @ estilo xxx
Jiang YD
Se a opção SSH foi adicionada a esta resposta, provavelmente poderíamos perder todas as outras.
toxaq
Não esqueça que você pode usar versões semânticas! yarn add https://github.com/fancyapps/fancybox.git#semver:^3.0Isso puxará a versão principal mais recente, atualmente 3.5.7.
Elte156 23/08/19
1
Também pode ser necessário adicionar uma pasta dist para resolver o módulo.
oligopol
Para SSH com repositório privado, achei que precisamos adicionar usuário git. por exemplo:yarn add ssh://[email protected]/fancyapps/fancybox#3.0
GusDeCooL 24/07
22

Para os URLs no estilo ssh, adicione ssh antes do URL:

yarn add ssh://<whatever>@<xxx>#<branch,tag,commit>
Tyler
fonte
9
Isso funcionou para mim quando yarnse recusou a honrar o comum gitssh url sintaxe: deu certo: yarn add ssh://[email protected]:my-org/my-repo#commit_hashnão funcionou:yarn add [email protected]:my-org/my-repo#commit_hash
kilogic
9

Para o repositório privado GitHub (ou similar):

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

Eu uso este formato curto para repositórios do github:

yarn add github_user/repository_name#commit_hash

betoharres
fonte