Saya sedang mengerjakan beberapa proyek di mana saya ingin menyediakan changelog yang akurat untuk setiap rilis, tetapi saya belum menemukan metode untuk mengumpulkan changelog yang akan bekerja tanpa kerumitan. Masalahnya sebagian besar ketika waktu antara versi panjang dan setiap versi dikirimkan dengan banyak fitur dan perbaikan bug, dan ketika perangkat lunak memiliki beberapa cabang yang sedang dikembangkan pada saat yang sama.
Beberapa opsi yang saya pertimbangkan:
- Bangun changelog dari pesan komit dan minta pengembang untuk menulis pesan seolah-olah mereka akan menulis baris untuk changelog (yang akan mereka lakukan secara efektif).
- Mungkin tidak berfungsi ketika ada banyak cabang dan penggabungan antar cabang (mungkin sulit untuk mengetahui komitmen mana yang akhirnya berakhir pada rilis).
- Mengharuskan bahwa untuk setiap perubahan kode harus ada tiket yang sesuai dalam sistem pelacakan bug. Changelog dapat ditulis berdasarkan tiket.
- Para devs mungkin merasa frustrasi untuk membuat tiket untuk perubahan kecil sekalipun, terutama jika membuat tiket membutuhkan waktu lebih lama daripada memperbaiki bug.
- Mengharuskan pengembang untuk selalu memperbarui changelog (sebagai file teks di root proyek) pada saat yang sama ketika mereka membuat perubahan pada kode.
- Terasa seperti kerja manual yang bisa otomatis.
- Mintalah manajer proyek mengambil perbedaan dari versi saat ini dan yang sebelumnya dan menulis changelog pada saat itu berdasarkan apa yang mereka lihat yang telah diubah.
- Kerja ekstra untuk orang yang bertanggung jawab atas rilis dan mungkin tidak jelas apa efek praktis dari perubahan hanya dengan melihat kode.
- Kirimkan hanya fitur yang telah direncanakan untuk rilis; Anda dapat menulis changelog bahkan sebelum memulai pengkodean.
- Bukan pilihan nyata kecuali jika Anda menggunakan model air terjun.
Saya telah menggunakan masing-masing atau variasi dari mereka di masa lalu tetapi mereka sudah terlalu tidak dapat diandalkan, sulit atau kaku. Adakah yang punya peluru ajaib atau ide bagus tentang cara mengatasi masalah?