Anlamsal Versiyonlama (Semantic Versioning
)
Anlamsal versiyonlama, proje geliştirme sürecinde önemli bir rol oynar. Sürüm numaraları, kullanıcıların yazılımın ne zaman ve nasıl güncellendiğini bilmesini ve geriye dönük uyumluluk sorunlarını önler. Bu nedenle doğru sürüm numaralandırma yöntemini seçmek çok önemlidir. Anlamsal versiyonlama, proje geliştirme süreçleri için popüler bir yaklaşımdır ve bu yazıda bu yaklaşımın ne olduğunu, önemini ve nasıl kullanıldığını keşfedeceğiz.
Anlamsal versiyonlama, proje sürümlendirme için bir numaralandırma şemasıdır. Bu yaklaşım, sürüm numaralarını anlamlı bir şekilde artırarak proje değişikliklerini ve uyumluluk durumunu belirtir.
Anlamsal versiyonlama, “MAJOR.MINOR.PATCH” şeklinde kullanır. Opsiyon olarak sürüm numarasının sonuna eklenen etiketlerle yazılımın geliştirme aşamasını veya durumunu belirtebiliriz (Örn: 1.0.0-beta, 1.0.0-alpha).
Major: Proje ile ilgili teknoloji değişikliği, tasarım değişikliği, mimari değişikliği gibi radikal değişiklikler olduğu zaman artırılır.
Minor: Projenin gelişmesine ve genişlemesine olanak tanınan geliştirmelerden sonra artırılan bir versiyon numarasıdır.
Patch: Projede minor veya major bir versiyon çıkıldıktan sonra, projede unutulan bir iş veya hata varsa çözümlenir. Basit bir versiyon düzenlemesi olarak düşünebiliriz.
Label: Versiyon ile ilgili bir etiket eklemenize olanak tanır. Bu etiket genellikle o versiyonun ortamını veya olduğu statüyü temsil eder. Büyük yazılım paketlerinde build özelliğine göre etiketleme yapılır örnek olarak.
Anlamsal versiyonlama, açık kaynak projelerde sıkça kullanılan bir yöntemdir. Bu nedenle, kullandığımız paketlerin veya uygulamaların versiyonlarını yükseltirken geriye dönük uyumluluğunu gözden geçirme imkanı sunar.
Patch versiyon değişikliklerinde genellikle mevcut eksiklikleri gidermek için yapılan değişiklikler olduğu için projemiz için bir sorun teşkil etmeyebilir. Ancak, major ve minor değişikliklerde geriye dönük uyumsuzluklar olabileceğinden, versiyon güncellemesinden önce yeni versiyonla yapılan değişikliklerin dokümantasyonunu okuyarak, herhangi bir engel durumu olmadığı takdirde versiyon yükseltme işlemini gerçekleştiririz.
Sonuç
Anlamsal versiyonlama, proje sürümlendirme için bir rehber sunar ve proje değişikliklerini ve uyumluluk durumunu açıkça ifade etmek için standart bir numaralandırma şeması sağlar. Bu yaklaşım, geliştiricilere, kullanıcılara ve diğer paydaşlara daha net bir şekilde proje sürümleri hakkında bilgi verir.
Yazımı okuduğunuz için teşekkür ederim, umarım sizin için yararlı olmuştur 🙂
İyi Çalışmalar…