On 2008-12-30, Zorba <cr@xxxxxxxxxxxxx> wrote: > ** REPRODUCING Possible bug [long script using "git checkout tag ." removed...] Conor, As Stephen said, you're using an extra "." which changes the meaning completely. In addition, the weird behaviour you see, where AC.txt appears to have sneaked in when you do a "git checkout versionB .", even though versionB does not have that file, is also correct -- read the second para of the DESCRIPTION section in "git help checkout", and note the phrase "update the index ... before updating the working tree". In other words, the special form of git checkout you used is updating not only the working tree but also the index. So when you checked out versionA in this manner, AC.txt got into the index (as well as the working tree). Your subsequent "rm *.*" only deeltes those files from the working tree; they're still in the index. To see this, run "git ls-files -s" just after each "rm *.*". You can also get the results you *want* to get by running a "git reset --hard" instead of "rm *.*", since your top commit in the current branch (which is what this would default to) has no files in it anyway. Happy New Year from India to Northern Ireland and everyone else in the world :-) -- 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