git/list[1] front-page[2] threads[3] people[4] search[5] about
 

Re: Odd issue - The Diffs That WILL NOT DIE.

From
Jeff King <peff@peff.net>
Date
Dec 7, 2011, 23:03 UTC
Message-ID
<20111207230329.GB21852@sigill.intra.peff.net>
In-Reply-To
<CAJ8P3RA48W7ZiABvjkn_KkU-JPnCnaF_X_WK0wPtToph3DGDvg@mail.gmail.com>
On Wed, Dec 07, 2011 at 05:24:01PM -0500, Chris Patti wrote:
Show 10 quoted lines
> Yup, you nailed it.  The files in question are CloudSponge.php
> (deleted) and Cloudsponge.php (still being actively maintained).
> [...]
> Actually I'm wrong on that count, but in an interesting way.
> 
> Both CloudSponge.php and Cloudsponge.php exist and are *not* deleted
> in the remote repository, but on OSX only Cloudsponge.php shows up on
> the filesystem, yet CloudSponge.php is being reported as modified.
> 
> Turns out two of our other developers are also seeing this behavior.

OK. Then it's not a bug[1], but rather an incompatibility issue. Your repository stores two files which differ only in case, but your underlying case-insensitive filesystem is incapable of storing both of them simultaneously.

There's really no way around it except to either use a case-sensitive filesystem, rename your files (or if one if obsolete, get rid of it).

[1] Arguably git could be better at noticing and reporting this issue, but that wouldn't change the fundamental problem.

> I am seeing the same behavior with 1.7.7.4 which I backrevved to
> yesterday while troubleshooting this issue.  Can you suggest an older
> version for me to try next?

No, you'll see the same behavior in all versions of git (I was mostly concerned that it was a regression new in v1.7.8, as I fixed some case-sensitivity bugs recently).

> I'm not sure how I would git bisect in this case, I'd need to have all
> the different git revs installed in order to do that right? (I'm
> relatively new to git bisect, just figured it out the other day).

You can't bisect, because you don't have a version that actually worked. But if you had, you would do it by cloning and building the git repository itself, then starting a bisection like:

  git clone git://git.kernel.org/pub/scm/git/git.git
  git bisect start
  git bisect bad v1.7.8
  git bisect good v1.7.7.4 ;# if it had turned out to be OK

and then repeatedly build and try your test with each version of git, until if finally narrowed it down to a single offending commit.

-Peff
Previous: Robin Rosenberg
Message 14 of 14 in “Odd issue - The Diffs That WILL NOT DIE.”
  1. Chris PattiDec 6, 2011
  2. Frans KlaverDec 6, 2011
  3. Carlos Martín NietoDec 6, 2011
  4. Chris PattiDec 7, 2011
  5. Philippe VaucherDec 7, 2011
  6. Chris PattiDec 7, 2011
  7. Chris PattiDec 7, 2011
  8. Jeff KingDec 7, 2011
  9. Chris PattiDec 7, 2011
  10. Chris PattiDec 7, 2011
  11. Carlos Martín NietoDec 7, 2011
  12. Jeff KingDec 7, 2011
  13. Robin RosenbergSep 5, 2012
  14. Jeff KingDec 7, 2011

Read the whole thread, see it on lore, or plain text.

$ cat FOOTERMessages come from the public archive at lore.kernel.org/git, fetched every hour. The front page is chosen and written each morning by an AI editor and can be wrong; the threads themselves are the record. About and API. For agents: an MCP server at https://gitlist.dev/mcp, and any thread, story or person page as Markdown by adding .md to its URL (or sending Accept: text/markdown). Details in /llms.txt.