Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
penanganan tanda npm
registri npm mendukung tanda, yang merupakan alias string untuk versi paket. Anda dapat menggunakan tanda untuk memberikan alias, bukan nomor versi. Misalnya, Anda mungkin memiliki proyek dengan beberapa aliran pengembangan dan menggunakan tanda yang berbeda (misalnya, stable
, beta
, dev
, canary
) untuk setiap aliran. Untuk informasi selengkapnya, lihat dist-tag
Secara default, npm menggunakan tanda latest
untuk mengidentifikasi versi paket saat ini. npm install
(tanpa penentu pkg
@
atau version
@
) menginstal tanda terbaru. Biasanya, proyek menggunakan tanda terbaru hanya untuk versi rilis stabil. Tanda lain digunakan untuk versi yang tidak stabil atau pra-rilis. tag
Edit tanda dengan klien npm
Ketiga perintah npm dist-tag
(add
, rm
, dan ls
) memiliki fungsi yang serupa dalam repositori CodeArtifact seperti yang mereka lakukan di registri npm default
Tanda npm dan API CopyPackageVersions
Ketika Anda menggunakan API CopyPackageVersions
untuk menyalin versi paket npm, semua tanda alias versi tersebut disalin ke repositori tujuan. Ketika versi yang sedang disalin memiliki tanda yang juga ada di tujuan, operasi penyalinan menetapkan nilai tanda di repositori tujuan untuk mencocokkan nilai di repositori sumber.
Sebagai contoh, anggap repositori S dan repositori D berisi satu versi paket web-helper
dengan set tanda terbaru seperti yang ditunjukkan dalam tabel ini.
Repositori | Nama paket | Tanda paket |
---|---|---|
D |
|
terbaru (alias untuk versi 1.0.1) |
D |
|
terbaru (alias untuk versi 1.0.0) |
CopyPackageVersions
dipanggil untuk menyalin web-helper
1.0.1 dari S ke D. Setelah operasi selesai, tanda latest
pada web-helper
dalam repositori alias D adalah 1.0.1, bukan 1.0.0.
Jika Anda perlu mengubah tanda setelah menyalin, gunakan perintah npm dist-tag
untuk mengubah tanda secara langsung di repositori tujuan. Untuk informasi selengkapnya tentang API CopyPackageVersions
, lihat Copying Packages Between Repositories.
tanda npm dan repositori hulu
Saat npm meminta tanda untuk paket dan versi paket yang juga ada di repositori hulu, CodeArtifact menggabungkan tanda sebelum mengembalikannya ke klien. Misalnya, repositori bernama R memiliki repositori hulu bernama U. Tabel berikut menunjukkan tanda untuk paket bernama web-helper
yang ada di kedua repositori.
Repositori | Nama paket | Tanda paket |
---|---|---|
R |
|
terbaru (alias untuk versi 1.0.0) |
U |
|
alfa (alias untuk versi 1.0.1) |
Dalam kasus ini, ketika mengambil tanda untuk paket web-helper
dari repositori R, klien npm menerima tanda terbaru danalfa. Versi yang ditunjukkan oleh tanda tidak akan berubah.
Ketika tanda yang sama ada pada paket yang sama di repositori hulu dan hilir, CodeArtifact menggunakan tanda yang ada dalam repositori hulu. Misalnya, anggap tanda pada webhelper telah dimodifikasi agar terlihat seperti berikut ini.
Repositori | Nama paket | Tanda paket |
---|---|---|
R |
|
terbaru (alias untuk versi 1.0.0) |
U |
|
terbaru (alias untuk versi 1.0.1) |
Dalam hal ini, ketika klien npm mengambil tanda untuk paket web-helper dari repositori R, tanda terbaru akan membuat alias versi 1.0.1 karena itulah yang ada di repositori hulu. Hal ini memudahkan penggunaan versi paket baru di repositori hulu yang belum ada di repositori hilir dengan menjalankan npm
update
.
Menggunakan tanda di repositori hulu dapat menjadi masalah ketika memublikasikan versi baru dari sebuah paket di repositori hilir. Sebagai contoh, anggap bahwa tanda terbaru pada paket web-helper sama di R dan U.
Repositori | Nama paket | Tanda paket |
---|---|---|
R |
|
terbaru (alias untuk versi 1.0.1) |
U |
|
terbaru (alias untuk versi 1.0.1) |
Saat versi 1.0.2 dipublikasikan ke R, npm memperbaruiterbarutanda untuk 1.0.2.
Repositori | Nama paket | Tanda paket |
---|---|---|
R |
|
terbaru (alias untuk versi 1.0.2) |
U |
|
terbaru (alias untuk versi 1.0.1) |
Namun, klien npm tidak pernah melihat nilai tanda ini karena nilaiterbarudi U adalah 1.0.1. Menjalankan npm install
terhadap repositori R segera setelah publikasi 1.0.2 akan menginstal 1.0.1, bukan versi yang baru saja dipublikasikan. Untuk menginstal versi yang paling baru dipublikasikan, Anda harus menentukan versi paket yang tepat, sebagai berikut.
npm install web-helper@1.0.2