SVN Revizyonunu .NET Derleme Versiyonlamanıza Dahil Etmek
Yazılım geliştirme dünyasında, sürüm kontrolünün sürdürülmesi kritik öneme sahiptir. Subversion (SVN) kullananlar için, SVN depo revizyon numarasını .NET derlemesinin sürüm dizesine dahil edebilmek, izlenebilirliği ve hata ayıklama kolaylığını artırabilir. “Bunu CC.NET gibi üçüncü taraf araçlar olmadan yapmanın bir yolu var mı?” diye soruyorsanız, kesin bir evet cevabı alıyorsunuz.
Problemin Tanımı: Ek Araçlar Olmadan Versiyonlama
Sürüm dizesinin yalnızca ana ve alt sürüm numaralarını değil, aynı zamanda SVN revizyon numarasını da yansıtmasını istemeniz durumlarıyla karşılaşmış olabilirsiniz. Düşünebileceğiniz tipik bir hedef sürüm formatı şöyle görünebilir:
Ana.Alt.SVNRev
Ne yazık ki, ek yazılım olmadan bunu .NET’te başarmanın basit bir yolunu bulmak zor olabilir, özellikle de daha önce C veya C++ gibi dillerde benzer bir şey yaptıysanız. C/C++’da, bu, bir derleme betiği kullanarak sürüm numarasını güncelleyen bir başlık dosyası ile başarılabilirdi.
Çözüm: SubWCRev Kullanma
SVN revizyon numarasını .NET derleme versiyonlamanıza dahil etmenin etkili bir yolu SubWCRev kullanmaktır; bu araç TortoiseSVN ile birlikte gelir. SubWCRev, dosyalarınızdan SVN anahtar kelimelerini okur ve bunları derleme sürecinde uygun revizyon bilgileriyle değiştirir.
SubWCRev Uygulama Adım Adım Kılavuzu
-
TortoiseSVN’i İndirin ve Yapılandırın:
- Eğer henüz indirmediyseniz TortoiseSVN’i indirmeye başlayın.
- Birlikte gelen SubWCRev aracını kullanabilmek için makinenize kurulum yapın.
-
AssemblyInfo.cs Dosyanızı Ayarlayın:
AssemblyInfo.cs
dosyanızı açın; bu dosya genellikle derlemenizin sürüm bilgilerini içerir.SubWCRev
tarafından sürüm numaralarının değiştirileceği yerlerde yer tutucular ekleyin.
Örnek:
[assembly: AssemblyVersion("1.0.0.0")] [assembly: AssemblyFileVersion("1.0.0.0")] [assembly: AssemblyInformationalVersion("1.0.0.0")]
-
Bir Şablon Dosyası Oluşturun:
- Yeni bir metin dosyası oluşturun (örneğin,
VersionInfo.txt
) ve sürüm bilgilerinin nasıl doldurulacağını tanımlamak için yapılandırın. - Revizyon numarası için yer tutucular kullanın.
VersionInfo.txt
örneği:[assembly: AssemblyVersion("${VersionNumber}.0")] [assembly: AssemblyFileVersion("${VersionNumber}.0")] [assembly: AssemblyInformationalVersion("${VersionNumber}.${Revision}")]
- Yeni bir metin dosyası oluşturun (örneğin,
-
SubWCRev’i Çalıştırın:
- Yer tutucuları
VersionInfo.txt
dosyanızda SVN deponuzdan gerçek sürüm numaraları ile değiştirmek için SubWCRev komutunu kullanın. - Bu genellikle bir komut satırı aracılığıyla veya derleme betiklerinize dahil edilerek yapılabilir.
- Yer tutucuları
-
Projenizi Oluşturun:
- Projenizi oluşturduğunuzda, SubWCRev yeni bir
AssemblyInfo.cs
oluşturacak ve sürümü SVN revizyonunuzu içerecek şekilde dolduracaktır.
- Projenizi oluşturduğunuzda, SubWCRev yeni bir
Sonuç
SubWCRev’i .NET proje iş akışınıza dahil ederek, derlemenizin sürüm dizesinin SVN revizyon numarasını içermesini kolayca sağlayabilirsiniz; bunu yapmak için CC.NET gibi dış yazılımlara bağımlı kalmadan. Bu yaklaşım, sürümlemenizi daha bilgilendirici hale getirir ve aynı zamanda basit ve yönetilebilir tutar.
Artık SVN revizyon numarasını .NET derleme versiyonlamanıza nasıl dahil edeceğinizi bildiğinize göre, bunu bir sonraki projenizde denemekten çekinmeyin ve getirdiği netliği takdir edeceksiniz.