Ini adalah perintah npm-install yang dapat dijalankan di penyedia hosting gratis OnWorks menggunakan salah satu dari beberapa workstation online gratis kami seperti Ubuntu Online, Fedora Online, emulator online Windows atau emulator online MAC OS
PROGRAM:
NAMA
npm-instal - Instal paket
RINGKASAN
npm install (tanpa argumen, dalam direktori paket)
npm instal [<@scope>/]
npm instal [<@scope>/] @
npm instal [<@scope>/] @
npm instal [<@scope>/] @
instal npm
instal npm
instal npm
alias: npm i
opsi umum: [-S|--save|-D|--save-dev|-O|--save-opsional] [-E|--save-exact] [--dry-run]
DESKRIPSI
Perintah ini menginstal sebuah paket, dan semua paket yang bergantung padanya. Jika paket memiliki
file shrinkwrap, instalasi dependensi akan didorong oleh itu. Lihat bantuan npm
bungkus plastik.
A paket adalah:
· a) folder yang berisi program yang dijelaskan oleh bantuan npm 5 package.json fillet
· b) tarbal gzip berisi (a)
· c) url yang memutuskan untuk (b)
· d) a @ yang diterbitkan di registri (lihat bantuan npm 7 npm-registri)
dengan (c)
· e) a @ yang menunjuk ke (d)
· f) a yang memiliki tag "terbaru" yang memuaskan (e)
· g) a <git terpencil url> yang memutuskan untuk (a)
Bahkan jika Anda tidak pernah mempublikasikan paket Anda, Anda masih bisa mendapatkan banyak manfaat menggunakan npm
jika Anda hanya ingin menulis program simpul (a), dan mungkin jika Anda juga ingin dapat
dengan mudah memasangnya di tempat lain setelah mengemasnya menjadi tarball (b).
· npm install (dalam direktori paket, tidak ada argumen):
Instal dependensi di folder node_modules lokal.
Dalam mode global (yaitu, dengan -g or --global ditambahkan ke perintah), itu menginstal
konteks paket saat ini (yaitu, direktori kerja saat ini) sebagai paket global.
Secara default, npm install akan menginstal semua modul yang terdaftar sebagai dependensi di npm help 5
package.json.
Dengan --produksi bendera (atau ketika NODE_ENV variabel lingkungan disetel ke
produksi), npm tidak akan menginstal modul yang terdaftar di ketergantungan dev.
· npm install :
Instal paket yang ada di folder di sistem file.
· npm install <tarball berkas>:
Instal paket yang ada di sistem file. Catatan: jika Anda hanya ingin menautkan
dev ke root npm Anda, Anda dapat melakukan ini lebih mudah dengan menggunakan npm link.
Contoh:
npm instal ./package.tgz
· npm install <tarball url>:
Ambil url tarball, lalu instal. Untuk membedakan antara ini dan
opsi lain, argumen harus dimulai dengan "http://" atau "https://"
Contoh:
npm instal https://github.com/indexzero/forever/tarball/v0.5.6
· npm install [<@lingkup>/] [-S|--save|-D|--save-dev|-O|--save-opsional]:
Lakukan a @ instal, di mana adalah konfigurasi "tag". (Lihat bantuan npm 7
npm-config.)
Dalam kebanyakan kasus, ini akan menginstal versi terbaru dari modul yang diterbitkan di npm.
Contoh:
npm menginstal saksofon
npm install mengambil 3 eksklusif, bendera opsional yang menyimpan atau memperbarui versi paket di
package.json utama Anda:
· -S, --menyimpan: Paket akan muncul di ketergantungan.
· -D, --simpan-dev: Paket akan muncul di ketergantungan dev.
· -HAI, --save-opsional: Paket akan muncul di dependensi opsional.
Saat menggunakan salah satu opsi di atas untuk menyimpan dependensi ke package.json Anda, ada
tambahan, bendera opsional:
· -E, --simpan-tepat: Ketergantungan yang disimpan akan dikonfigurasikan dengan versi yang tepat
daripada menggunakan operator rentang semver default npm.
Selanjutnya, jika Anda memiliki npm-shrinkwrap.json maka akan diperbarui juga.
adalah opsional. Paket akan diunduh dari registri yang terkait dengan
lingkup yang ditentukan. Jika tidak ada registri yang dikaitkan dengan cakupan yang diberikan, registri defaultnya adalah
diasumsikan. Lihat bantuan npm 7 npm-lingkup.
Catatan: jika Anda tidak menyertakan simbol @ pada nama cakupan Anda, npm akan menafsirkannya sebagai
Repositori GitHub sebagai gantinya, lihat di bawah. Nama cakupan juga harus diikuti dengan garis miring.
contoh:
npm install saksofon --save
npm instal githubname/reponame
npm instal @myorg/privatepackage
npm instal node-tap --save-dev
npm install dtrace-provider --save-opsional
npm instal readable-stream --save --save-exact
Note: Jika ada file atau folder bernama di direktori kerja saat ini, maka itu
akan mencoba menginstalnya, dan hanya mencoba mengambil paket dengan nama jika tidak valid.
· npm install [<@lingkup>/] @:
Instal versi paket yang direferensikan oleh tag yang ditentukan. Jika tag
tidak ada dalam data registri untuk paket itu, maka ini akan gagal.
Contoh:
npm instal sax@latest
npm instal @myorg/mypackage@latest
· npm install [<@lingkup>/] @:
Instal versi paket yang ditentukan. Ini akan gagal jika versinya belum
telah dipublikasikan ke registri.
Contoh:
instalasi npm [email dilindungi]
npm instal @myorg/[email dilindungi]
· npm install [<@lingkup>/] @ jangkauan>:
Instal versi paket yang cocok dengan rentang versi yang ditentukan. Ini akan
ikuti aturan yang sama untuk menyelesaikan dependensi yang dijelaskan dalam npm help 5 package.json.
Perhatikan bahwa sebagian besar rentang versi harus diberi tanda kutip sehingga shell Anda akan menanganinya
sebagai argumen tunggal.
Contoh:
npm install sax@">=0.1.0 <0.2.0"
npm install @myorg/privatepackage@">=0.1.0 <0.2.0"
· npm install <git terpencil url>:
Menginstal paket dari penyedia git yang dihosting, mengkloningnya dengan git. Pertama mencoba
melalui https (git dengan github) dan jika gagal, melalui ssh.
://[ [: ]@] [: ][:][/] [# ]
adalah salah satu git, git+ssh, git+http.git+http, atau git+https. Jika tidak is
ditentukan, maka menguasai digunakan.
Variabel lingkungan git berikut dikenali oleh npm dan akan ditambahkan ke:
lingkungan saat menjalankan git:
· GIT_ASKPAS
· GIT_PROXY_COMMAND
· GIT_SSH
· GIT_SSH_COMMAND
· GIT_SSL_CAINFO
· GIT_SSL_NO_VERIFY
Lihat halaman manual git untuk detailnya.
contoh:
npm instal git+ssh://[email dilindungi]:npm/npm.git#v1.0.27
npm instal git+https://[email dilindungi]/npm/npm.git
npm instal git://github.com/npm/npm.git#v1.0.27
GIT_SSH_COMMAND=´ssh -i ~/.ssh/custom_identnpm instal git+ssh://[email dilindungi]: npm/npm.git
· npm install / [# ]:
· npm install github: / [# ]:
Instal paket di https://github.com/githubname/githubrepo dengan mencoba mengkloning
itu menggunakan git.
Jika Anda tidak menentukan a komit-ish kemudian menguasai akan digunakan.
contoh:
npm instal mygithubuser/proyek saya
npm instal github: mygithubuser/proyek saya
· npm install inti:[ /] [# ]:
Instal paket di https://gist.github.com/gistID dengan mencoba mengkloningnya menggunakan
git. Nama pengguna GitHub yang terkait dengan Gist bersifat opsional dan tidak akan disimpan di
package.json if -S or --menyimpan digunakan.
Jika Anda tidak menentukan a komit-ish kemudian menguasai akan digunakan.
Contoh:
npm instal inti: 101a11beef
· npm install bitbucket: / [# ]:
Instal paket di https://bitbucket.org/bitbucketname/bitbucketrepo dengan mencoba
untuk mengkloningnya menggunakan git.
Jika Anda tidak menentukan a komit-ish kemudian menguasai akan digunakan.
Contoh:
npm instal bitbucket: mybitbucketuser/myproject
· npm install gitlab: / [# ]:
Instal paket di https://gitlab.com/gitlabname/gitlabrepo dengan mencoba mengkloning
itu menggunakan git.
Jika Anda tidak menentukan a komit-ish kemudian menguasai akan digunakan.
Contoh:
npm instal gitlab: mygitlabuser/proyek saya
Anda dapat menggabungkan beberapa argumen, dan bahkan beberapa jenis argumen. Sebagai contoh:
npm install sax@">=0.1.0 <0.2.0" pengawas bangku
The --menandai argumen akan berlaku untuk semua target pemasangan yang ditentukan. Jika tag dengan
nama yang diberikan ada, versi yang diberi tag lebih disukai daripada versi yang lebih baru.
The --lari-kering argumen akan melaporkan dengan cara biasa apa yang akan dilakukan penginstalan
tanpa benar-benar menginstal apa pun.
The -f or --memaksa argumen akan memaksa npm untuk mengambil sumber daya jarak jauh bahkan jika salinan lokal
ada di disk.
npm install saksofon --force
The -g or --global argumen akan menyebabkan npm menginstal paket secara global daripada
lokal. Lihat bantuan npm 5 npm-folder.
The --gaya global argumen akan menyebabkan npm menginstal paket ke lokal Anda
node_modules folder dengan tata letak yang sama dengan yang digunakan dengan global node_modules map. Hanya
dependensi langsung Anda akan muncul di node_modules dan semua yang mereka andalkan akan menjadi
diratakan di mereka node_modules folder. Ini jelas akan menghilangkan beberapa deduping.
The --bundling warisan argumen akan menyebabkan npm menginstal paket sedemikian rupa sehingga versi
npm sebelum 1.4, seperti yang disertakan dengan node 0.8, dapat menginstal paket. Ini
menghilangkan semua deduping otomatis.
The --tautan argumen akan menyebabkan npm menautkan pemasangan global ke ruang lokal di beberapa
Kasus.
The --no-bin-tautan argumen akan mencegah npm membuat symlink untuk binari apa pun
paket mungkin berisi.
The --tidak opsional argumen akan mencegah dependensi opsional diinstal.
The --tanpa-shrinkwrap argumen, yang akan mengabaikan file shrinkwrap yang tersedia dan menggunakan
package.json sebagai gantinya.
The --nodedir=/path/ke/node/sumber argumen akan memungkinkan npm untuk menemukan kode sumber node jadi
bahwa npm dapat mengkompilasi modul asli.
The --only={prod[uction]|dev[kawin lari]} argumen hanya akan menyebabkan ketergantungan dev or
hanya non-ketergantungan dev untuk dipasang terlepas dari NODE_ENV.
Lihat bantuan npm 7 npm-config. Banyak parameter konfigurasi memiliki beberapa efek pada
instalasi, karena itulah sebagian besar yang dilakukan npm.
ALGORITMA
Untuk menginstal sebuah paket, npm menggunakan algoritma berikut:
muat pohon node_modules yang ada dari disk
mengkloning pohon
ambil package.json dan berbagai macam metadata dan tambahkan ke klon
jalankan klon dan tambahkan dependensi yang hilang
dependensi akan ditambahkan sedekat mungkin ke atas
tanpa merusak modul lainnya
bandingkan pohon asli dengan pohon kloning dan buat daftar
tindakan yang harus diambil untuk mengubah satu ke yang lain
jalankan semua tindakan, yang terdalam dulu
jenis tindakan adalah menginstal, memperbarui, menghapus, dan memindahkan
Untuk ini paket{dep} struktur: SEBUAH{B,C}, B{C}, CD}, algoritma ini menghasilkan:
A
+--B
+--C
+--D
Artinya, ketergantungan dari B ke C dipenuhi oleh fakta bahwa A telah menyebabkan C menjadi
dipasang pada tingkat yang lebih tinggi. D masih terpasang di level atas karena tidak ada apa-apa
konflik dengan itu.
Untuk SEBUAH{B,C}, B{C,D@1}, B{D@2}, algoritma ini menghasilkan:
A
+--B
+--C
`-- D@2
+-- D@1
Karena B´s D@1 akan dipasang di tingkat atas, C sekarang harus menginstal D@2 secara pribadi untuk
itu sendiri.
Lihat folder npm help 5 untuk penjelasan lebih rinci tentang struktur folder tertentu
yang dibuat oleh npm.
keterbatasan of npm's Install Algoritma
Ada beberapa kasus tepi yang sangat langka dan patologis di mana siklus dapat menyebabkan npm mencoba
instal pohon paket yang tidak pernah berakhir. Berikut adalah kasus paling sederhana:
A -> B -> A´ -> B´ -> A -> B -> A´ -> B´ -> A -> ...
dimana A adalah beberapa versi paket, dan SEBUAH adalah versi berbeda dari paket yang sama.
Karena B tergantung pada versi yang berbeda dari A daripada yang sudah ada di pohon, itu
harus menginstal salinan terpisah. Hal yang sama berlaku untuk SEBUAH, yang harus diinstal B. Karena B
tergantung pada versi asli A, yang telah diganti, siklusnya jatuh ke dalam
kemunduran tak terbatas.
Untuk menghindari situasi ini, npm flat-out menolak untuk menginstal apapun nama@versi itu sudah
hadir di mana saja di pohon leluhur folder paket. Lebih benar, tapi lebih
kompleks, solusinya adalah dengan menghubungkan versi yang ada ke lokasi baru. Jika ini
pernah mempengaruhi kasus penggunaan nyata, itu akan diselidiki.
Gunakan npm-install online menggunakan layanan onworks.net