Saya seorang pemula makedan saya bertanya-tanya kapan harus menggunakannya make clean.
Salah satu kolega memberi tahu saya bahwa penambahan build makedidasarkan pada stempel waktu file. Jadi, jika Anda checkout versi lama file di VCS Anda, itu akan memiliki cap waktu "lama" dan itu akan ditandai sebagai "tidak perlu mengkompilasi ulang file ini". Kemudian, file itu tidak akan dimasukkan dalam build berikutnya.
Menurut kolega yang sama, itu akan menjadi alasan untuk menggunakannya make clean.
Ngomong-ngomong, saya kira-kira mendapat jawaban untuk pertanyaan "kapan harus menggunakan make clean" dari pertanyaan StackExchange lainnya tetapi pertanyaan saya yang lain adalah:
Mengapa membangun tambahan menggunakan
makemengandalkan stempel waktu file dan bukan pada SHA-1 misalnya? Git, misalnya, menunjukkan bahwa kita dapat berhasil menentukan apakah suatu file diubah menggunakan SHA-1.
Apakah itu untuk masalah kecepatan?
makemaka perangkat lunak Anda tidak akan rusak, namun makeberusaha untuk memiliki kompatibilitas ke belakang dalam versi baru. Mengubah perilaku inti tanpa alasan yang jelas merupakan kebalikan dari itu. Dan tanggal menunjukkan mengapa itu awalnya tidak dibuat untuk menggunakan SHA-1, atau mengapa itu tidak mudah untuk retrofit ketika sudah tersedia ( makesudah puluhan tahun saat itu).
makediciptakan pada 70-an. SHA-1 dibuat pada tahun 90-an. Git dibuat pada tahun 00-an. Hal terakhir yang Anda inginkan adalah beberapa bangunan tidak jelas yang bekerja selama 30 tahun tiba-tiba gagal karena seseorang memutuskan untuk menjadi modern dengan sistem yang telah dicoba dan diuji.