Trying to understand `git diff` and `git mv` rename detection mechanism

Git’s “similarity index” computation is not, as far as I know, documented anywhere other than in the source, starting with diffcore-delta.c. To compute the similarity index for two files S (source) and D (destination), Git: reads both files computes a hash table of all of the chunks of file S computes a second hash table … Read more