Subject: Re: Peculiar behavior of git 1.5.6

From: Johannes Sixt <[email-masked]>
Date: Thu, 04 Sep 2008 10:09:23 +0200

Larry Finger schrieb:
> On one of my systems, I found strange behavior for git-1.5.6.GIT. On the
> first pull of the linux-2.6 tree, I got a message that one file was not
> uptodate. When I investigated any possible differences with git-diff,
> there were none. A subsequent git-pull worked fine. I lost the console
> output for linux-2.6, but the same thing happened for Linville's
> wireless-testing, as shown below:
> 
> finger@sonylap:~/wireless-testing> git --version
> git version 1.5.6.GIT
> finger@sonylap:~/wireless-testing> git pull
> error: Entry 'drivers/bluetooth/bt3c_cs.c' not uptodate. Cannot merge.
> fatal: merging of trees 294e21019bac11cb782e8d1893d02ce98ed816a4 and
> 810d24221c9c532475af90d1b7ba9ca381dc3696 failed
> Merge with strategy recursive failed.
> finger@sonylap:~/wireless-testing> git diff > tmp
> finger@sonylap:~/wireless-testing> cat tmp
> finger@sonylap:~/wireless-testing> git pull
> Removed Documentation/usb/auerswald.txt
> Auto-merged MAINTAINERS
> ...
> 
> Is this a bug in git, an incompatibility between my version and that of
> the server at kernel.org, or something else?

I guess you had touched the timestamp of drivers/bluetooth/bt3c_cs.c in
some way without modifying its contents, which made 'git pull' think it is
modified.

The 'git diff' that you did next corrected this behind your back, so that
the subsequent 'git pull' did not see any modification anymore. (BTW, if
you had used 'git status' instead of 'git diff' you would have observed
the same behavior.)

-- Hannes