Jak zainstalować pakiet z repozytorium github w Yarn


140

Kiedy używam npm install fancyapps/fancybox#v2.6.1 --save, pakiet fancybox w tagu v2.6.1 zostanie zainstalowany. To zachowanie jest opisane w dokumentacji

Chcę zapytać, jak to zrobić yarn?

Czy to polecenie jest właściwą alternatywą? W dokumentach yarn nie ma nic o tym formacie.

yarn add fancyapps/fancybox#v2.6.1

Odpowiedzi:


213

Możesz dodać dowolne repozytorium Git (lub archiwum tar) jako zależność yarn, określając zdalny adres URL (HTTPS lub 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.

Oto kilka przykładów:

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]

(Uwaga: Fancybox v2.6.1 nie jest dostępny w wersji Git).


3
ale nie można używać stylu git @ xxx
Jiang YD

Gdyby do tej odpowiedzi dodano opcję SSH, prawdopodobnie stracilibyśmy wszystkie pozostałe.
toxaq

Nie zapomnij, że możesz używać wersji semantycznej! yarn add https://github.com/fancyapps/fancybox.git#semver:^3.0Spowoduje to pobranie najnowszej wersji głównej, która obecnie jest 3.5.7.
Elte156

1
Dodanie folderu dist może być również potrzebne do rozwiązania modułu.
oligopol

W przypadku SSH z prywatnym repozytorium stwierdziłem, że musimy dodać użytkownika git. np .:yarn add ssh://git@github.com/fancyapps/fancybox#3.0
GusDeCooL

23

W przypadku adresów URL w stylu ssh po prostu dodaj ssh przed adresem URL:

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

9
To zadziałało dla mnie, gdy yarnodmówiłem przestrzegania wspólnej gitskładni adresu URL ssh yarn add ssh://git@github.com:my-org/my-repo#commit_hash: yarn add git@github.com:my-org/my-repo#commit_hash
Działało


9

W przypadku prywatnego repozytorium GitHub (lub podobnego):

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

1

Używam tego krótkiego formatu dla repozytoriów github:

yarn add github_user/repository_name#commit_hash

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.