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.gz
veya.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>
Installs the package from the hosted Git provider, cloning it with Git.
You may install packages from Git by:
- Latest commit from default branch:
pnpm add kevva/is-positive
- Git commit hash:
pnpm add kevva/is-positive#97edff6f525f192a3f83cea1944765f769ae2678
- Git branch:
pnpm add kevva/is-positive#master
- Git branch relative to refs:
pnpm add zkochan/is-negative#heads/canary
- Git tag:
pnpm add zkochan/is-negative#2.0.1
- V-prefixed Git tag:
pnpm add andreineculau/npm-publish-git#v0.0.7
- Version range:
pnpm add kevva/is-positive#semver:^2.0.0
Semver
You can specify version (range) to install using the semver:
parameter. For example:
- Strict semver:
pnpm add zkochan/is-negative#semver:1.0.0
- V-prefixed strict semver:
pnpm add andreineculau/npm-publish-git#semver:v0.0.7
- Semver version range:
pnpm add kevva/is-positive#semver:^2.0.0
- V-prefixed semver version range:
pnpm add andreineculau/npm-publish-git#semver:<=v0.0.7
Subdirectory
You may also install just a subdirectory from a Git-hosted monorepo using the path:
parameter. For instance:
pnpm add RexSkz/test-git-subfolder-fetch#path:/packages/simple-react-app
Full URL
If you want to be more explicit or are using alternative Git hosting, you might want to spell out full Git URL:
# git+ssh
pnpm add git+ssh://git@github.com:zkochan/is-negative.git#2.0.1
# https
pnpm add https://github.com/zkochan/is-negative.git#2.0.1
Providers shorthand
You can use a protocol shorthand [provier]:
for certain Git providers:
pnpm add github:zkochan/is-negative
pnpm add bitbucket:pnpmjs/git-resolver
pnpm add gitlab:pnpm/git-resolver
If [provider]:
is omited, it defaults to github:
.
Parameters combination
It is possible to combine multiple parameters by separating them with &
. This can be useful for forks of monorepos:
# Install git branch `beta`
# Install only subfolder `/packages/simple-react-app`
pnpm add RexSkz/test-git-subfolder-fetch.git#beta&path:/packages/simple-react-app
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.