pnpm add <paket-adı>
Belirtilen paketi ve bağımlı olduğu diğer paketleri yükler. Komutun varsayılan eylemi, eklemek istenilen paketi production seviyesinde, yani dependencies kısmına tanımlayarak yükler.
Kısaca;
| Komut | İşlevi |
|---|---|
pnpm add sax | dependencies kısmına tanımlayarak yükler |
pnpm add -D sax | devDependencies kısmına tanımlayarak yükler |
pnpm add -O sax | optionalDependencies kısmına tanımlayarak yükler |
pnpm add -g sax | Paketi global olarak yükler |
pnpm add sax@next | Paketin, next etiketli sürümünü yükler |
pnpm add sax@3.0.0 | Paketin, 3.0.0 sürümünü yükler |
Desteklenen paket kaynakları/konumları
npm kayıtlarından yükleme
pnpm add paket-ismi, paket-ismi paketinin son sürümünü varsayılan olarak npm veri tabanı'ndan yükler.
Bir çalışma alanında yürütülürse, komut önce projenin belirtilen paketi kullanıp kullanmadığını kontrol etmeye çalışır. Bu durumda, halihazırda kullanılan sürüm aralığı yüklenecektir.
Paket kurulumunu aşağıdaki alternatif örneklerle de yapabilirsin:
- tag/etiket belirterek:
pnpm add express@nightly - sürüm belirterek:
pnpm add express@1.0.0 - iki sürüm aralığı belirterek:
pnpm add express@2 react@">=0.1.0<0.2.0"
Çalışma alanından/Workspace'den yükleme
Paket kurulumu yaparken ve çalışma alanı içerisinde çalışırken; yüklemek istenilen paket link-workspace-packages ayarının tanımlı olması veya olmaması ve workspace: sürüm aralığı kullanılması durumuna bağlı olarak, sadece belirtilen kaynaktan yüklenir.
Yerel dosya sisteminden yükleme
Yerel dosya sisteminden yüklemenin iki yolu var:
- tarball dosyası kullanarak (
.tar,.tar.gzveya.tgz) - bir dizini kaynak olarak belirterek
Şu şekilde:
pnpm add ./package.tar.gz
pnpm add ./some-directory
Bir dizini kaynak olarak belirterek yükleme yaptığında, projenin node_modules klasörü içerisinde belirtilen dizin için sembolik bağ (symlink) oluşturulur. Bu işlem aynı zamanda pnpm link komutu ile aynı şekilde çalışır.
Tarball linki ile yükleme
Belirtilecek olan link, "http://" veya "https://" ile başlamalı ve indirmeye uygun bir URL olmalıdır.
Örnek kullanım:
pnpm add https://github.com/indexzero/forever/tarball/v0.5.6
Git deposundan yükleme
pnpm add <git remote url>
Paketi, Git komut sistemi ile Git deposunu klonlayarak yüklemesini yapar. Ayrıca, yaygın Git sağlayıcıları için özel protokol kullanarak da yükleme yapabilirsin. Örneğin pnpm add github:kullanıcı/repo
Git sağlayıcılarından şu yollar ile yükleme yapabilirsin:
- varsayılan branch'in son commit'i:
pnpm add kevva/is-positive - hedef commit'i belirterek:
pnpm add kevva/is-positive#97edff6f525f192a3f83cea1944765f769ae2678 - hedef branch'i belirterek:
pnpm add kevva/is-positive#master - sürüm aralığı belirterek:
pnpm add kevva/is-positive#semver:^2.0.0
Parametreler
--save-prod, -P
Belirtilen paketleri dependencies kısmına tanımlayarak yükler.
--save-dev, -D
Belirtilen paketleri devDependencies kısmına tanımlayarak yükler.
--save-optional, -O
Belirtilen paketleri optionalDependencies kısmına tanımlayarak yükler.
--save-exact, -E
Yüklenecek olan paketleri, pnpm'in varsayılan semver aralık operatörünü kullanmadan yükler. Yani, ^ karakterini, sürüm bilgisinin başına eklenmez.
--save-peer
Paket yüklerken --save-peer kullanıldığında yüklenecek olan paketler, peerDependencies kısmına eklenerek, bir dev dependencies'miş gibi yüklenir.
--ignore-workspace-root-check
Adding a new dependency to the root workspace package fails, unless the --ignore-workspace-root-check or -w flag is used.
For instance, pnpm add debug -w.
--global, -g
Paketi, global olarak yükler.
--workspace
Belirlenen paket workspace içerisinde bulunduğu takdirde, hedef projeye dependency (bağ) olarak yükler.