Skip to content

Çalışma Alanları

Tek bir depoda birden fazla proje bulunan ve hepsinin Volta ayarlarını paylaşmak istediği bir çalışma alanı ortamında Volta'nın nasıl kullanılacağına ilişkin ayrıntılar.

TIP

Bu özellik Volta 0.8.2'de eklenmiştir, önceki sürümlerde çalışmayacaktır.

Yapılandırmayı Genişletme

package.json içindeki "volta" bölümünde, "extends" anahtarına sahip bir girdi belirtebilirsiniz. Bu girdinin değeri, "volta" bölümüne sahip başka bir JSON dosyasına bir yol olmalıdır. Göreli yollar, ayarlandıkları dosyaya göreli olarak çözümlenecektir. Herhangi bir Volta ayarı (ör. "node" veya "yarn" sürümleri), "extends" ile işaret edilen dosyadan gelenlerle birleştirilecektir; öncelik mevcut dosyaya verilecektir. Bu nedenle, tüm projeleriniz için tek bir Node sürümüne sahip olmak istiyorsanız, bu sürümleri kök düzeyde ayarlarsınız ve ardından her projenin yalnızca "extends": "../path/to/root/package.json" ihtiyacı olur.

Örnekler

Aşağıdaki klasör yapığı ve package.json içerikleri verildiğinde:

.
├── package.json
└── packages
    ├── cli
    │   └── package.json
    └── utils
        └── package.json
  • package.json
json
{
  "volta": {
    "node": "12.16.1",
    "yarn": "1.22.4"
  }
}
  • packages/cli/package.json
json
{
  "volta": {
    "extends": "../../package.json"
  }
}
  • packages/utils/package.json
json
{
  "volta": {
    "extends": "../../package.json"
  }
}

Çalışma alanında herhangi bir yerde node çalıştırmanız, Node 12.16.1 sürümünü kullanmanıza neden olacaktır. Ve bu sürümü kök package.json dosyasında güncellerseniz, her alt projede ayarları çoğaltmaya gerek kalmadan otomatik olarak tüm projelerde kullanılacaktır.

Araçları Sabitleme

Bir çalışma alanında bir araç sürümü seçmek için volta pin çalıştırdığınızda, Volta bu ayarları her zaman bulduğu en yakın package.json dosyasına ekleyecektir. Yani, yukarıdaki örnekte, packages/utils alt projesi içinde volta pin node@14 çalıştırırsanız, Node'un yeni sürümü packages/utils/package.json dosyasına yazılacak ve yalnızca utils alt projesi için geçerli olacaktır; diğerleri için değil. Bu, araç sürümlerini proje bazında kolayca özelleştirmenize olanak tanır.

volta pin kullanarak kök yapılandırmada değişiklik yapmak istiyorsanız, önce çalışma alanı kök dizinine cd komutuyla geçin ve ardından volta pin komutunu oradan çalıştırın.

Hook'lar

Projeniz proje hook'ları kullanıyorsa, bunları bir alt projedeki .volta dizinine veya kökteki .volta dizinine yerleştirebilirsiniz. Volta, "extends" anahtarıyla işaret edilen her konumda hook'ları arayacaktır, böylece ayarlar ihtiyaç duyulan herhangi bir düzeyde özelleştirilebilir.

Projeye Özel İkili Dosyalar

Her düzeyde hook'ları aramanın yanı sıra, Volta üçüncü taraf bir araç çalıştırırken kullanmak için proje yerel bağımlılıklarını tespit etmek için de her düzeyi kontrol edecektir. "extends" ile referans verilen her dosyaya göreli olarak node_modules/.bin içinde bulmaya çalışacaktır.

Released under the BSD 2-Clause License.