Sürüm kontrol sistemi tarafından tutulan kayıt geçmişini kullanmak neredeyse hiçbir maliyeti yoktur. Bununla birlikte, büyük bir proje yeniden düzenleme (veya yeniden düzenleme / temizleme) çabası sırasında, işlevler ve sınıflar ve hatta ad alanları hareket ettirilecektir; bazen birkaç dosya birleştirilir ve diğer dosyalar bölünür. Bu değişiklikler genellikle birkaç dosyanın orijinal yürütme geçmişinin kaybolmasına neden olur.
Kişisel görüşüme göre, projenin organizasyonunun sürdürülmesi kaynak kodu geçmişini tutmaktan daha önemlidir. İyi proje organizasyonu, yeni özelliklerin makul çabayla sürekli olarak eklenmesine izin verirken, kaynak kodu geçmişinin değeri şüpheli görünüyor.
Ayrıca, birim test kullanımı ile regresyon sorunları hızla tanımlanır. En son sürüm tüm yazılım gereksinimlerini karşılamaya devam ettiği sürece, aslında kaynak kodun geçmişini korumamız gerekir mi?
Müşterilere büyük bir sürüm yükseltmesi gerektirmeden destek sağlama ihtiyacı nedeniyle, gönderilen herhangi bir kaynak kodunun korunması gerektiğini anlıyorum . Ancak bunun dışında, kaynak kodun geçmişini tutmanın bir değeri var mı?
Kaynak kodu işlem geçmişi ekip üyeleri arasındaki iletişimde herhangi bir rol oynuyor mu? İşlem geçmişini kaldırır, bunun yerine iletişim için "kaynak kod" + "birim test koduna" güvenirsek ne olur?
Taahhüt tarihinin varlığı, büyük tasarım / gereksinim değişiklikleri ve bu değişiklikleri yönlendiren düşünce akışları gibi proje hakkında önemli bilgilerin uzun vadeli dokümantasyonu hakkında bir şikayette bulunuyor mu?
These changes often lead to the loss of the original commit history of a few files.
Örneğin "git suçu" na bir göz atın - hiçbir şey kaybolmaz. Bazen bulmak biraz zor olabilir, ama her zaman oradadır.