Saya mendapat kesan bahwa sistem kontrol versi menghilangkan kebutuhan untuk memiliki "log perubahan" terpampang di mana-mana dalam kode. Saya sering melihat terus menggunakan log perubahan, termasuk blok panjang yang besar pada awal prosedur tersimpan dengan bagian besar diblokir untuk perubahan pada file dan mengotori kode dengan hal-hal seperti:
// 2011-06-14 (John Smith) Change XYZ to ABC to fix Bug #999
dan:
// 2009-95-12 (Bob Jones) Extracted this code to Class Foo
// <commented-out code here>
Alasan untuk ini, seperti yang dijelaskan kepada saya, adalah bahwa terlalu lama untuk menyaring log VCS kami mencoba untuk menemukan siapa yang mengubah apa dan mengapa, sambil menyimpannya dalam file kode itu sendiri, baik di bagian atas atau dekat yang relevan berubah, membuatnya mudah untuk melihat siapa yang mengubah apa dan kapan. Sementara saya melihat intinya, sepertinya berlebihan dan hanya semacam menampar "Eh kita tidak benar-benar mengerti bagaimana menggunakan VCS kita dengan benar, jadi kita tidak akan repot-repot dengan hal itu sama sekali."
Bagaimana menurut anda? Apakah Anda menggunakan komentar dan log? Hanya log? Apakah Anda menemukan bahwa lebih mudah untuk membuat kode ketika Anda dapat melihat di atas blok kode bahwa John Smith mengubah metode untuk memeriksa XYZ seminggu yang lalu, daripada harus mencari melalui log dan membandingkan file kode dalam alat Diff?
EDIT: Menggunakan SVN, tetapi pada dasarnya hanya sebagai repositori. Tidak ada cabang, tidak ada gabungan, tidak ada apa pun kecuali penyimpanan log +.