Saya mencoba menginstal repositori pribadi github oleh npm yang menyertakan repositori github pribadi lainnya sebagai dependensi.
Telah mencoba banyak cara dan posting tetapi tidak ada yang berfungsi. Inilah yang saya lakukan:
npm install git+https://github.com/myusername/mygitrepository.git
di package.json seperti:
"dependencies": {
"repository1name": "git+https://github.com/myusername/repository1.git",
"repository2name": "git+https://github.com/myusername/repository2.git"
}
Apa cara yang tepat untuk melakukannya?
node.js
github
dependencies
npm
package.json
vashishatashu
sumber
sumber
Jawaban:
Coba ini:
Anda juga dapat mencoba ini, di mana visionmedia / express adalah nama / repo:
Atau (jika modul paket npm ada):
Diambil dari NPM docs
sumber
fatal: ambiguous argument 'commit-ish': unknown revision or path not in the working tree.
Pretty jelas itucommit-ish
hanya contoh kata yang harus Anda ganti dengansha
komit spesifik yang Anda butuhkan. (atau hapus itu#commit-ish
sama sekali jika Anda memerlukan komit terbaru di cabang master Anda)Berikut ini berfungsi dengan baik di semua skenario yang saya butuhkan:
sumber
Bagi Anda yang datang ke sini untuk direktori publik, dari npm docs: https://docs.npmjs.com/files/package.json#git-urls-as-dependencies
Git URL sebagai Dependensi
URL git dapat berupa:
Commit-ish dapat berupa tag, sha, atau cabang yang dapat diberikan sebagai argumen untuk checkout. Standarnya adalah master.
sumber
As of version 1.1.65, you can refer to GitHub urls as just “foo”: “user/foo-project”.
referensi npmjs docsgit+https://
? Gunakangit
protokol untuk kloning dan menarik perubahan baru sambil mendoronghttps
?Jawaban yang diterima berfungsi, tetapi saya tidak suka banyak ide untuk menempelkan token aman ke dalam
package.json
Saya telah menemukannya di tempat lain, jalankan saja perintah satu kali ini seperti yang didokumentasikan di halaman git-config .
GITHUB_TOKEN
dapat diset sebagai variabel environment atau disisipkan secara langsungdan kemudian saya menginstal repositori github pribadi seperti:
npm install user/repo --save
berfungsi juga di Heroku, cukup atur
git config ...
perintah di atas sebagaiheroku-prebuild
skrippackage.json
dan setupGITHUB_TOKEN
sebagai variabel konfigurasi Heroku.sumber
npm install
langkah....insteadOf ssh://[email protected]
npm install user/repo --save
. Apakah ada sesuatu yang perlu saya konfigurasi?Ada beberapa cara untuk melakukannya seperti yang ditunjukkan orang, tetapi versi yang paling singkat adalah:
misalnya
sumber
atau hanya
https://docs.npmjs.com/files/package.json#github-urls
sumber
Karena Git menggunakan di
curl
bawah tenda, Anda dapat menggunakan~/.netrc
file dengan kredensial. Untuk GitHub akan terlihat seperti ini:Jika Anda memilih untuk menggunakan
access tokens
, itu dapat dihasilkan dari:Ini juga akan berfungsi jika Anda menggunakan Github Enterprise di perusahaan Anda sendiri. cukup letakkan url github perusahaan Anda di
machine
bidang.sumber
machine github.com login <token>
satu jalur dan"package": "https://github.com/acme/privaterepo.git#commit-ish"
atau langsung dengannpm install https://github.com/acme/privaterepo.git#commit-ish
Berikut ini adalah versi yang lebih rinci tentang cara menggunakan token Github tanpa mempublikasikan dalam
package.json
file.Jika akses ke Github gagal, coba jalankan
git ls-remote ...
perintah yangnpm install will print
sumber
Untuk referensi repositori pribadi saya, saya tidak ingin menyertakan token yang aman, dan tidak ada yang sederhana (yaitu hanya menentukan dalam package.json) yang berfungsi. Inilah yang berhasil:
sumber
Ada juga Kunci SSH - Masih meminta kata sandi dan frasa sandi
Menggunakan
ssh-add ~/.ssh/id_rsa
tanpa gantungan kunci lokal.Ini menghindari keharusan untuk mengacaukan token.
sumber