npm'ye Yayınlama ve Anlamsal Sürümleme
changesets veya semantic-release ile sürümleri otomatikleştirip kapsamlı paketleri npm kayıt deposuna yayınlayın
npm'ye Yayınlama ve Anlamsal Sürümleme, CoddyKit'te ücretsiz bir React Academy dersidir. Bu, 4 dersinin 4. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, React Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. React Academy kursu toplamda 4 dersten oluşur.
npm publish --dry-run
Yayımlamadan önce her zaman npm publish --dry-run komutunu çalıştırın. Bu, hiçbir şeyi gerçekten yüklemeden yayımlama işlemini simüle eder; tam olarak hangi dosyaların dahil edileceğini, boyutlarını ve paket tar arşivinin içeriğini gösterir. Kaynak dosyalarını yanlışlıkla dahil etmek veya dist dizinini eksik bırakmak gibi yaygın hataları yakalar.
Yayımlanan Dosyaları Denetleme
files alanını package.json içinde kullanarak yayımlanacak içerikleri denetleyin: "files": ["dist", "README.md"]. Bu beyaz liste yaklaşımı, .npmignore'dan (kara liste olan ve eklemeyi unuttuğunuzda hassas dosyaların sızmasına neden olabilen) daha güvenlidir. dist dizinini, tür bildirimlerini ve belgeleri her zaman dahil edin. src, sınamalar veya node_modules dizinlerini asla dahil etmeyin.
Anlamsal Sürümlemenin Temelleri
npm paketleri anlamsal sürümleme (semver) kurallarını izler: MAJOR.MINOR.PATCH. Geriye dönük uyumluluğu bozan değişiklikler (özellikleri kaldırma, API imzalarını değiştirme) için MAJOR sürüm numarasını artırın. Yeni, geriye dönük uyumlu özellikler (yeni bileşenler, yeni isteğe bağlı özellikler) için MINOR sürüm numarasını artırın. Geriye dönük uyumlu hata düzeltmeleri için PATCH sürümünü artırın. 0.x.x sürümü, her şeyin bozulabileceği kararlı öncesi bir sürüm olarak kabul edilir.
Ön Sürümler
Ön sürüm tanımlayıcıları, bir sürümün üretime hazır olmadığını belirtir: 1.0.0-alpha.1 erken deneysel derlemeler, 1.0.0-beta.2 özellikleri tamamlanmış ancak hatalar içerebilecek sürümler ve 1.0.0-rc.1 (sürüm adayı) son sınamalara hazır sürümler için kullanılır. Ön sürümleri npm publish --tag beta komutuyla yayımlayın; böylece varsayılan kurulum haline gelmezler.
changesets Aracı
Changesets, bileşen kitaplıklarında paket sürümlemesini ve değişiklik günlüklerini yönetmek için kullanılan standart araçtır. İş akışı şöyledir: katkı sağlayanlar, neyin değiştiğini ve değişiklik türünü (ana/küçük/yama) kaydetmek için yarn changeset add komutunu çalıştırır. CI, paket sürümlerini artırmak için yarn changeset version komutunu çalıştırır. Yayımlama adımı, npm'e göndermek için yarn changeset publish komutunu çalıştırır.
Otomatik CHANGELOG Oluşturma
Changesets, katkı sağlayanların gönderdiği değişiklik kümesi dosyalarına dayanarak CHANGELOG.md dosyasını otomatik olarak oluşturur ve güncel tutar. Her kayıt; sürüm numarasını, yayımlanma tarihini ve değişiklik açıklamalarını içerir. Böylece elle değişiklik günlüğü bakımı gerektirmeden her sürümün insanlar tarafından okunabilir bir geçmişi oluşturulur.
Alternatif Olarak semantic-release
semantic-release, bir sonraki sürümü geleneksel değişiklik kaydı iletilerinden belirleyen tamamen otomatik bir sürümleme aracıdır (feat: → küçük, fix: → yama, BREAKING CHANGE: → ana). Sürümü artırır, değişiklik günlüğünü oluşturur ve npm'e yayımlar — bunların tümü main dalıyla birleştirme sonrasında CI tarafından tetiklenir. Elle sürüm yönetimi gerekmez.
npm Erişimi: Genel ve Kısıtlı
Kapsamsız paketler (my-component) her zaman geneldir. Kapsamlı paketler (@myorg/my-component) varsayılan olarak kısıtlıdır (özeldir); npm publish --access public komutuyla bunları genel olarak yayımlayabilirsiniz. Kısıtlı paketler için ücretli bir npm hesabı veya kuruluş gerekir. İlk yayımlamanızdan önce erişim ayarlarını doğrulayın.
npm Kaynak Doğrulaması
npm kaynak doğrulaması, yayımladığınız paketi doğrulanabilir bir şekilde belirli bir git kaydına bağlar. GitHub Actions içinde npm publish --provenance komutuyla etkinleştirin. Kullanıcılar, yükledikleri paketin npm kayıt sayfasında gösterilen tam kaynak kaydından oluşturulduğunu doğrulayabilir. Bu, yazılım tedarik zinciri güvenliğini önemli ölçüde artırır.
Eski Sürümleri Kullanımdan Kaldırma
Bir sürümde kritik bir hata veya uyumluluğu bozan bir değişiklik olduğunda onu kullanımdan kaldırın: npm deprecate your-package@1.2.3 "Security vulnerability, upgrade to 1.2.4". npm, bu sürümü yükleyen herkese kullanımdan kaldırma uyarısı gösterir. Sürüm kaldırılmaz (npm, yayımlanmış sürümleri varsayılan olarak silmez); ancak kullanıcılar yükseltme yapmaları için uyarılır.
Kapsamlı Paket Adlandırma
Kapsamlı paketler @scope/package-name biçimini kullanır. Kapsam genellikle npm kullanıcı adınız veya kuruluşunuzun adıdır. Kapsamlı paketler, paketi kimin sürdürdüğünü açıkça gösterir ve kapsamsız paketlerle ad çakışmalarını önler. Özel paketler ve kuruluşunuzla ilişkili açık kaynak paketler için kapsamlı paketler kullanın.
Anlamsal Sürümleme: MAJOR ve MINOR
Anlamsal sürümleme kurallarına göre MAJOR sürüm numarasını ne zaman artırmalısınız?
Ders Özeti: Yayımlama ve Sürümleme
Önizleme yapmak için npm publish --dry-run komutunu, yayımlanacak içerikleri denetlemek için de dosyalar alanını kullanın. Anlamsal sürümleme: uyumluluğu bozan değişiklikler için MAJOR, yeni özellikler için MINOR, düzeltmeler için PATCH. Ön sürümlerde -alpha/-beta/-rc etiketleri kullanılır. Changesets, ortaklaşa geliştirilen kitaplıklar için sürümlemeyi ve CHANGELOG oluşturmayı otomatikleştirir. semantic-release, geleneksel değişiklik kayıtlarından yola çıkarak süreci otomatikleştirir. Tedarik zinciri güvenliği için --provenance seçeneğini etkinleştirin. Hatalı sürümleri npm deprecate komutuyla kullanımdan kaldırın.
Yapay zeka eğitmeniyle React öğren — ücretsiz
Tarayıcında gerçek kod yaz ve çalıştır, 7/24 yapay zeka eğitmeninden anında yardım al; web'de ya da uygulamada kaldığın yerden devam et.
- Kurslar
- 88
- Dersler
- 324
Sıkça Sorulan Sorular
“npm'ye Yayınlama ve Anlamsal Sürümleme” dersi ücretsiz mi?
Evet — “npm'ye Yayınlama ve Anlamsal Sürümleme” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve React Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. React Academy kursu toplamda 4 dersten oluşur.
“npm'ye Yayınlama ve Anlamsal Sürümleme” dersinde ne öğreneceğim?
changesets veya semantic-release ile sürümleri otomatikleştirip kapsamlı paketleri npm kayıt deposuna yayınlayın React Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
React Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te React Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 4. dersidir.
“npm'ye Yayınlama ve Anlamsal Sürümleme” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu React Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her React Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Kitaplıklar için Rollup ve tsup ile Paketleme
- ESM ve CJS Çift Paket Çıktısı
- Eş Düzey Bağımlılıklar ve Ağaç Sarsma
- npm'ye Yayınlama ve Anlamsal Sürümleme