pub type CommitHash = [u8; 20];
SHA-1 git commit hash, 20 bytes. Phase 1 does not care about the SHA-256-object-format experiment yet; if/when we adopt it, this becomes enum CommitHash { Sha1([u8; 20]), Sha256([u8; 32]) }.
enum CommitHash { Sha1([u8; 20]), Sha256([u8; 32]) }