git@vger.kernel.org mailing list mirror (one of many)
 help / color / mirror / code / Atom feed
From: Daniel Barkalow <barkalow@iabervon.org>
To: thestar@fussycoder.id.au
Cc: Hannu Koivisto <azure@iki.fi>, rdkrsr <rdkrsr@googlemail.com>,
	git@vger.kernel.org
Subject: Re: An idea: maybe Git should use a lock/unlock file mode for problematic files? [Was: Re: after first git clone of linux kernel repository there are changed files in working dir]
Date: Tue, 20 Jan 2009 15:11:28 -0500 (EST)	[thread overview]
Message-ID: <alpine.LNX.1.00.0901201441480.19665@iabervon.org> (raw)
In-Reply-To: <20090120105228.xbo3gyc0odwcgcsc@webmail.fussycoder.id.au>

On Tue, 20 Jan 2009, thestar@fussycoder.id.au wrote:

> Quoting Hannu Koivisto <azure@iki.fi>:
> <snip>
> > Kernel source contains pairs of files whose names differ only by
> > case.  Windows cannot store such pairs (at least by default) and
> > apparently there is no support for such a situation in git so
> > you'll only get one file from each pair to your workspace and the
> > other file is shown as modified.
> 
> Could git be modified to allow such repositories to be used on windows  
> by locking files that are problematic, for example, a given repository  
> could have files 'AAA' and 'aAa'.
> 
> The one that correctly represents the on-disk file would be 'open for  
> edit', while the other file would be locked.  To edit the other file,  
> the existing file would need to be locked, and then the other file  
> would then need to be open for edit.
> 
> This could even be extended to allow one to "open file AAA for edit as  
> aAa.v2', giving the file an alternate name.
> 
> Such a workflow would only need to be used for such files, and could  
> also be used when there are incompatible file names for that given  
> partition type.

The hard part is actually identifying what the user's filesystem has done. 
There's pretty good internal support for git knowing that, for a 
particular entry, the filesystem should not be consulted for information. 
I don't think anyone's come up with a suitably cross-platform and 
automatic way to figure out what's happened when git tries to write to a 
particular filename and the system decides it is the same as some other 
filename or it decides to use a different filename instead.

Of course, it is reasonably likely that a project whose files can't all be 
checked out can't be dealt with anyway on that platform (IIRC, the Linux 
kernel build system assumes that it can create both .S and .s files, so it 
won't build on FAT). So nobody's been sufficiently motivated to try to 
implement a fix.

	-Daniel
*This .sig left intentionally blank*

  reply	other threads:[~2009-01-20 20:13 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <d304880b0812101019ufe85095h46ff0fe00d32bbd0@mail.gmail.com>
2008-12-10 18:22 ` after first git clone of linux kernel repository there are changed files in working dir rdkrsr
2008-12-10 20:20   ` Brett Simmers
     [not found]     ` <d304880b0812110142g41b80745ic09a7200e02dcdb0@mail.gmail.com>
2008-12-11 17:15       ` Fwd: " rdkrsr
2008-12-11 17:41         ` Linus Torvalds
2008-12-11 17:58           ` rdkrsr
2008-12-11 20:23             ` Boyd Stephen Smith Jr.
2008-12-11 20:35             ` Giuseppe Bilotta
2008-12-12 13:51             ` Nick Andrew
2009-01-19 13:36   ` Hannu Koivisto
2009-01-19 23:52     ` An idea: maybe Git should use a lock/unlock file mode for problematic files? [Was: Re: after first git clone of linux kernel repository there are changed files in working dir] thestar
2009-01-20 20:11       ` Daniel Barkalow [this message]
2009-01-20 21:28         ` John Chapman
2009-01-20 22:08           ` Daniel Barkalow
2009-01-20 23:25             ` Alex Riesen
2009-01-21  0:03               ` Daniel Barkalow
2009-01-21  7:25                 ` Alex Riesen

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

  List information: http://vger.kernel.org/majordomo-info.html

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

  git send-email \
    --in-reply-to=alpine.LNX.1.00.0901201441480.19665@iabervon.org \
    --to=barkalow@iabervon.org \
    --cc=azure@iki.fi \
    --cc=git@vger.kernel.org \
    --cc=rdkrsr@googlemail.com \
    --cc=thestar@fussycoder.id.au \
    /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.
Code repositories for project(s) associated with this public inbox

	https://80x24.org/mirrors/git.git

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 read-only IMAP folder(s) and NNTP newsgroup(s).