git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Joshua Jensen <jjensen@workspacewhiz.com>
To: Junio C Hamano <gitster@pobox.com>
Cc: Nguyen Thai Ngoc Duy <pclouds@gmail.com>, git@vger.kernel.org
Subject: Re: What's cooking in git.git (Dec 2010, #06; Tue, 21)
Date: Thu, 23 Dec 2010 16:35:57 -0700	[thread overview]
Message-ID: <4D13DCDD.3050300@workspacewhiz.com> (raw)
In-Reply-To: <7vfwto2ytb.fsf@alter.siamese.dyndns.org>

----- Original Message -----
From: Junio C Hamano
Date: 12/23/2010 10:17 AM
> Nguyen Thai Ngoc Duy<pclouds@gmail.com>  writes:
>
>> On Wed, Dec 22, 2010 at 8:59 AM, Junio C Hamano<gitster@pobox.com>  wrote:
>> With jj/icase-directory merged to master, match_pathspec() and
>> match_pathspec_depth() now diverse again.
>>
>> When I wrote match_pathspec_depth(), I assumed that match_pathspec()
>> would not change much and I would have more time for converting the
>> rest of git to use match_*_depth(). Looks like I need to add case
>> insensitive matching to struct pathspec and friends then remove
>> match_pathspec() in this series too. At least if somebody changes
>> match_pathspec() again, it would cause a conflict so I can catch it.
> While this topic is something I have long wanted to see, I have started
> feeling that this needs to cook a bit longer than be in the next release.
> So perhaps the best course of action might be to rebase the series once
> after the 1.7.4 feature freeze, cook it in 'next' for a while and make it
> part of the release after that.  I think at that point we may probably
> want to have other changes that are not strictly backward compatible but
> their incompatibilities do not matter in practice (e.g. cquoting pathspecs
> in the attributes file comes to mind, but I am sure there will be other
> changes that people wanted to have but we held them off due to worries on
> compatibility).
>
> What do you think?
Certainly, you know what's best overall for Git.

Having said that, I have had 100 people using the jj/icase-directory 
series on Windows daily for 4 months now without issue.  Prior to that, 
a majority of the series had been used for a full year by a dozen 
people.  In any case, the improvement on non-case sensitive file systems 
is the difference between night and day, and the series has helped 
prevent a number of messes that occurred without it (git add readme.txt 
and git add Readme.txt, for example... ugh...).

More than Windows, this series also affects Mac OS X in a positive 
manner, though the case sensitivity problems can be considered worse.  
When you change directories at the command line, the command line 
retains the case you used to change directory, and then Git uses that 
case as the relative path into the repository.  Ugh... this is different 
than on Windows where the file system's directory case is retained at 
the Command Prompt as you change directories.  (Cygwin actually appears 
to have the problem, too, but MinGW, what msysGit is built upon, does not.)

The Mac OS X issue listed above is not a reason not to publish the 
series, though, as the fixes necessary to make that work are in 
completely different areas in Git than the current jj/icase-directory 
series.

Finally, I'm sitting on a bunch of other case sensitivity refinements, 
but I'd like to get one series published before evolving this more.  I'd 
like to get the other ones out there for discussion, but they build on 
the current series.

In reference to above, where is match_pathspec_depth()?  I can only find 
match_pathspec().

Josh

  reply	other threads:[~2010-12-23 23:40 UTC|newest]

Thread overview: 17+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-12-22  1:59 What's cooking in git.git (Dec 2010, #06; Tue, 21) Junio C Hamano
2010-12-22 11:05 ` Thiago Farina
2010-12-22 11:39   ` Andreas Ericsson
2010-12-22 20:48   ` Junio C Hamano
2010-12-22 23:08     ` Thiago Farina
2010-12-23 15:52 ` Heiko Voigt
2010-12-23 16:32 ` Nguyen Thai Ngoc Duy
2010-12-23 17:17   ` Junio C Hamano
2010-12-23 23:35     ` Joshua Jensen [this message]
2010-12-24  1:39       ` Nguyen Thai Ngoc Duy
2010-12-24 16:53         ` Joshua Jensen
2010-12-25  2:20           ` Nguyen Thai Ngoc Duy
2010-12-24 19:23       ` Junio C Hamano
2010-12-24 20:02         ` Joshua Jensen
2010-12-24  1:33     ` Nguyen Thai Ngoc Duy
2010-12-26 10:46 ` Thomas Rast
2010-12-26 19:28   ` 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=4D13DCDD.3050300@workspacewhiz.com \
    --to=jjensen@workspacewhiz.com \
    --cc=git@vger.kernel.org \
    --cc=gitster@pobox.com \
    --cc=pclouds@gmail.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).