I am trying to find out how native git handles the racy git problem. I read https://raw.github.com/git/git/master/Documentation/technical/racy-git.txt. But I cannot reproduce the behaviour described in this text. I want to create an index which contains entries where the length of the file was set to 0 to mark the entry as "racily clean". As I understood the text you have to modify a file and execute 'git update-index <file>' so fast that in the end the files modification time is the same as the modification time of the file .git/index. That should be sufficient that when persisting the index during the 'git update-index' call git should detect that the files mod-time is younger than the index mod time and should mark this entry "racily clean" with a length of 0. Here is the script with which I try to produce it but it always fails to create an index with a smudged entry. Any ideas? (Btw: I would assume that the first entry in the index is smduged when I find 4 zeros beginning at position 48. That's what I deduced from https://github.com/gitster/git/blob/master/Documentation/technical/index-format.txt) #!/bin/bash git init echo "initial" > foo # wait for the next tick on the filesystem clock touch foo lastTouch=$(stat -c %Y foo) while [ $lastTouch = $(stat -c %Y foo) ] ;do touch foo done git add foo # modify 'foo' and update the index # (hopefully before the filesystem clock has increased) # repeat this step until the filesystem timer increased and # print the index everytime lastTouch=$(stat -c %Y foo) while [ $lastTouch = $(stat -c %Y foo) ] ;do echo "modification #$n" > foo git update-index foo let "n += 1" echo "after attempt $n:" # dump 4 bytes of index beginning from pos 48. # That should be the length of the first entry od -j 48 -N 4 -x -A d .git/index done -- To unsubscribe from this list: send the line "unsubscribe git" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html