Integritas data.
Saya dengan hormat tidak setuju dengan jawaban saat ini. Hash tidak diperlukan untuk DVCS, lihat cara Bazaar . Anda juga dapat melakukannya dengan jenis pengenal unik global lainnya. Hash adalah ukuran untuk menjamin integritas data: Mereka mewakili intisari informasi yang terkandung dalam objek (komit, pohon, ...) yang dirujuk oleh hash. Mengubah konten tanpa mengubah hash (yaitu, serangan preimage atau serangan tabrakan ) diyakini sulit, meskipun bukan tidak mungkin. (Jika Anda benar-benar menyukainya, lihatlah makalah 2011 karya Marc Stevens ).
Oleh karena itu, merujuk pada objek dengan hash SHA mereka memungkinkan untuk memeriksa apakah isinya telah dirusak. Dan, mengingat bahwa mereka (hampir) dijamin unik, mereka juga dapat digunakan sebagai pengidentifikasi revisi - sangat mudah.
Lihat Bab 9 dari buku Git untuk lebih jelasnya.