Próbuję zainstalować prywatne repozytorium github przez npm, które zawiera inne prywatne repozytoria github jako zależność.
Próbowałem wiele sposobów i postów, ale żaden nie działa. Oto co robię:
npm install git+https://github.com/myusername/mygitrepository.git
w package.json jest jak:
"dependencies": {
"repository1name": "git+https://github.com/myusername/repository1.git",
"repository2name": "git+https://github.com/myusername/repository2.git"
}
Jaki jest właściwy sposób to zrobić?
node.js
github
dependencies
npm
package.json
vashishatashu
źródło
źródło
Odpowiedzi:
Spróbuj tego:
Możesz także spróbować tego, gdzie visionmedia / express to name / repo:
Lub (jeśli istnieje moduł pakietu npm):
Zaczerpnięte z dokumentów NPM
źródło
fatal: ambiguous argument 'commit-ish': unknown revision or path not in the working tree.
dość oczywistego, żecommit-ish
to tylko przykładowe słowo, które należy zastąpićsha
konkretnym zatwierdzeniem, którego potrzebujesz. (lub usuń to#commit-ish
w ogóle, jeśli potrzebujesz najnowszego zatwierdzenia w gałęzi master)Poniższe działało dobrze we wszystkich potrzebnych scenariuszach:
źródło
Dla tych z was, którzy przybyli tutaj po katalogi publiczne, z dokumentów npm: https://docs.npmjs.com/files/package.json#git-urls-as-dependencies
Adresy URL Git jako zależności
Adresy URL Git mogą mieć postać:
Zatwierdzenie może być dowolnym znacznikiem, sha lub gałęzią, które można podać jako argument do pobrania z git. Domyślnie jest to master.
źródło
As of version 1.1.65, you can refer to GitHub urls as just “foo”: “user/foo-project”.
dokumentacja npmjs docsgit+https://
? Używaćgit
protokołu do klonowania i wyciągać nowe zmiany podczas przepychaniahttps
?Akceptowana odpowiedź działa, ale nie podoba mi się pomysł wklejenia bezpiecznych tokenów do pliku
package.json
Znalazłem go gdzie indziej, po prostu uruchom to jednorazowe polecenie, jak udokumentowano na stronie man git-config .
GITHUB_TOKEN
można skonfigurować jako zmienną środowiskową lub wkleić bezpośrednioa następnie instaluję prywatne repozytoria github, takie jak:
npm install user/repo --save
działa również w Heroku, wystarczy ustawić powyższe
git config ...
polecenie jakoheroku-prebuild
skrypt wpackage.json
i skonfigurowaćGITHUB_TOKEN
jako zmienną konfiguracyjną Heroku.źródło
npm install
krokiem....insteadOf ssh://[email protected]
npm install user/repo --save
. Czy muszę coś skonfigurować?Ludzie zwracają uwagę na wiele sposobów, ale najkrótsze wersje to:
na przykład
źródło
Lub tylko
https://docs.npmjs.com/files/package.json#github-urls
źródło
Ponieważ Git używa
curl
pod maską, możesz używać~/.netrc
pliku z poświadczeniami. W przypadku GitHub wyglądałoby to mniej więcej tak:Jeśli zdecydujesz się użyć
access tokens
, możesz go wygenerować z:Powinno to również działać, jeśli korzystasz z Github Enterprise we własnej korporacji. wystarczy wpisać adres URL github przedsiębiorstwa w
machine
polu.źródło
machine github.com login <token>
jedną linią i"package": "https://github.com/acme/privaterepo.git#commit-ish"
lub bezpośrednio znpm install https://github.com/acme/privaterepo.git#commit-ish
Oto bardziej szczegółowa wersja korzystania z tokena Github bez publikowania w
package.json
pliku.W przypadku awarii dostępu do Github spróbuj uruchomić
git ls-remote ...
polecenie, którenpm install will print
źródło
W odniesieniu do mojego prywatnego repozytorium nie chciałem dołączać bezpiecznego tokena i żadne inne proste (tj. Określanie tylko w pakiecie.json) nie działało. Oto, co zadziałało:
źródło
Jest także klucz SSH - wciąż pytasz o hasło i hasło
Używanie
ssh-add ~/.ssh/id_rsa
bez lokalnego pęku kluczy.To pozwala uniknąć bałaganu z tokenami.
źródło