All of lore.kernel.org
 help / color / mirror / Atom feed
From: Jeff King <peff@peff.net>
To: Reuben Hawkins <reubenhwk@gmail.com>
Cc: git@vger.kernel.org, dpotapov@gmail.com, tboegi@web.de,
	Joshua Jensen <jjensen@workspacewhiz.com>
Subject: Re: [PATCH] fast-import.c: always honor the filename case
Date: Sun, 2 Feb 2014 18:00:38 -0500	[thread overview]
Message-ID: <20140202230038.GB16196@sigill.intra.peff.net> (raw)
In-Reply-To: <1391346784-11891-1-git-send-email-reubenhwk@gmail.com>

[+cc Joshua Jensen, who wrote 50906e0]

On Sun, Feb 02, 2014 at 07:13:04AM -0600, Reuben Hawkins wrote:

> fast-import should not use strncmp_icase.

I am not sure of that. My gut feeling is that core.ignorecase is
completely about the _filesystem_, and that git should generally be
case-sensitive internally. But I do not know that everyone agrees. Your
commit is basically a revert of 50906e0 (Support case folding in git
fast-import when core.ignorecase=true, 2010-10-03). And here's some
additional discussion specifically regarding fast-import:

  http://thread.gmane.org/gmane.comp.version-control.git/200597

So I think there is a discussion to be had[1].

> When it does, files with
> similar names, but different case can be lost in the import.  For
> example...
> 
> M 100644 :1 FileName.txt
> D Filename.txt
> 
> ...would end up deleting FileName from the index during the fast-
> import when strncmp_icase is used and core.ignorecase=true.  The
> intent in the above snippet is to rename the file, not delete it.

There may be a separate bug where fast-import needs to be smarter about
ordering operations in such a case (or perhaps fast-export generators
need to be more careful about the order of their output). But it might
be fixable without disabling case-insensitivity entirely.

-Peff

[1] I am mostly trying to connect people on various sides of the
    discussion here. So take my "gut feeling" above with a grain of
    salt, as it does not come from experience nor thinking too hard
    about the issue.

  parent reply	other threads:[~2014-02-02 23:00 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-02-02 13:13 [PATCH] fast-import.c: always honor the filename case Reuben Hawkins
2014-02-02 20:08 ` Torsten Bögershausen
     [not found]   ` <CAD_8n+RZACW0380co75gWSwVmCJdcH4COsySTF3BFCyKEumXNA@mail.gmail.com>
2014-02-03 20:21     ` Torsten Bögershausen
2014-02-04  0:14       ` Junio C Hamano
     [not found]       ` <CAD_8n+RuwQEXJRCOr+B_PqA7z6LkFdbcRZkiiVJsEhJ=+YjRDg@mail.gmail.com>
2014-02-05 21:19         ` Torsten Bögershausen
     [not found]           ` <CAD_8n+Thn3tNTYxLK49mDOGdLpWRCFUCJo9b76UbAjnCdqXsRQ@mail.gmail.com>
2014-02-09 20:34             ` Torsten Bögershausen
     [not found]               ` <CAD_8n+ToUDbXrVuru7GV7toYKHXuQb8vL3B_-sfzQdXZFqzD2A@mail.gmail.com>
2014-02-11 17:29                 ` Torsten Bögershausen
2014-02-02 23:00 ` Jeff King [this message]
2014-02-03 17:21   ` Junio C Hamano

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140202230038.GB16196@sigill.intra.peff.net \
    --to=peff@peff.net \
    --cc=dpotapov@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=jjensen@workspacewhiz.com \
    --cc=reubenhwk@gmail.com \
    --cc=tboegi@web.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.