On Tuesday 2007 May 22, Stian Haklev wrote: > git --version > ../file1 Good stuff. The ">" only redirects stdout to file1; stderr would still be written to your terminal - did you notice any errors from this script? Could you run again, but append "2>&1" to the end of each redirecting line? > git status >> ../file1 Seemed fine after this. > echo checking out works with old >> ../file1 > git checkout works-with-old >> ../file1 Seemed fine after this. > git status >> ../file1 Seemed fine after this. > git checkout master >> ../file1 > git status >> ../file1 Kaboom! > # On branch master > # Changes to be committed: > # (use "git reset HEAD <file>..." to unstage) > # > # deleted: NOTES > # modified: display-page.rb > # deleted: eee_darwin > # modified: gui.rb > # modified: htmlshrinker-data.rb > # modified: htmlshrinker.rb > # modified: mongrel-web-gui.rb > # modified: mongrel-web.rb > # modified: zarchive.rb > # new file: zcompress.rb > # modified: zdump-7z.rb > # modified: zdump.rb > # modified: zipdoc.rb > # deleted: zutil.rb Wow. I've never seen anything like that. Neither the index nor the working tree has actually been updated - but HEAD now points at master. What was the output of that last git-checkout (unfortunately it outputs to stderr not stdout, so you'll need the "2>&1" at the end of each line in your script)? git-checkout won't change HEAD unless the change of index and working tree worked. I can't see the path through the git-checkout script that would have done what you're describing. I think it's going to need a guru on this one, however, we'll keep at it until I can't think of any more questions :-) Do you observe the same behaviour on all repositories or just this one particular repository? What's the form of this repository? That is to say, is works-with-old a branch from master or is it an independent branch? e.g. 0 -- * -- * -- * (master) 0 -- * -- * -- * (master) or \ 0 -- * -- * -- * (works-with-old) * -- * -- * (works-with-old) I assume once you get into this broken state that running "git-reset --hard" restores the working tree back to master? Does changing that last checkout to "git-checkout -f master" improve things? Andy -- Dr Andy Parkins, M Eng (hons), MIET andyparkins@xxxxxxxxx - 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