[PATCH 1 of 1] doc: add "icasefs" additional help topic for case insensitive filesystem
Matt Mackall
mpm at selenic.com
Fri Apr 20 02:25:32 UTC 2012
On Thu, 2012-04-19 at 00:31 +0900, FUJIWARA Katsunori wrote:
> Hi, Matt.
>
> Thank you for your comments.
>
> At Tue, 17 Apr 2012 11:21:54 -0500,
> Matt Mackall wrote:
>
> > > I tried to write out-line of 'filesystem' help doc, and abstract of
> > > each (new) sub topics. Are there enough/supposed topics ?
> > >
> > > - Handling links (NEW)
> > >
> > > - symlink
> > >
> > > Mercurial can record symlink as the text of link destination
> > > into history.
> > >
> > > on some platform where symlink capability is not available
> > > (e.g.: NTFS on Windows, VFAT on Linux), Mercurial writes symlink
> > > out as the plain text file which contains destination of
> > > symlink.
> >
> > These things are so different that they probably shouldn't be grouped.
>
> You mean that symlink and hardlink shouldn't be grouped, don't you ?
Yep.
> # or 'recording into history and writing out' ?
>
> > > - hardlink
> > >
> > > - hardlinking in metadata
> > >
> > > - hardlink used in "hg clone"
> > > - overview of "relink" extension
> >
> > I'd rather have just a "see also".
>
> I'll write so.
>
> > > - hardlinking in working directory
> > >
> > > - assosiation between hard linked files is not recorded into
> > > history
> > >
> > > - "hg update" and "hg revert" unlink files before writing data
> > > into target files, so hardlinked content is not modified
> > >
> > > - Management other than contents (NEW)
> > >
> > > - exec bit
> > >
> > > initial value and changes of exec bit are recorded into
> > > hitstory.
> > >
> > > but it is ignored on some platform (VFAT on some Linux platform
> > > or Cygwin), because it does not treat exec bit correctly.
> > >
> > > - Working on caee insensitive filesystem
> > >
> > > - Warning for case-folding collision
> > > - Abort for case-folding collision
> > > - Abort updating to another version
> > > - Abort merging with another revision
> > > - Workaround
> > > - Updating with --check or --clean
> > > - Renaming colliding files
> > > - Updating manually
> >
> > Updating manually is probably too advanced for the built-in help.
>
> Is linking to Wiki page also NOT needed ?
>
> # http://mercurial.selenic.com/wiki/ManualCheckout
We can probably do that.
> > > - Case determination process in Mercurial (NEW)
> > >
> > > when you specify 'file' as filename in command line on case
> > > insensitive filesystem, case of it is determined in order below.
> > >
> > > 1. 'file' is normalized in case (e.g.: lower): call it as 'normed'
> > >
> > > 2. if dirstate(or "manifest of working"?) has the 'konwn-file'
> > > which is equal to 'normed' if it is normalized in case,
> > > Mercurial uses 'konwn-file' as 'file'.
> > >
> > > 3. if filesystem has 'existing-file' which is equal to 'normed'
> > > if it is normalized in case , Mercurial uses
> > > 'existing-file' as 'file'.
> > >
> > > 4. otherwise, Mercurial uses 'file' as 'file' itself.
> >
> > It's simpler to say something like:
> >
> > On case-insensitive systems, Mercurial decides what case to use in the
> > following order:
> >
> > - the case used in the dirstate, if a file is tracked
> > - or the case used in the filesystem, if the file exists
> > - or the case given on the command line
>
> I'll write so.
>
> BTW, is 'dirstate' term is suitable ? I think there is no explanation
> for it in any helps, also in 'glossary'.
Excellent question. There's not a suitable term in the glossary, and I
don't know if we really want to expose the notion of 'dirstate' to
non-experts.
> # but 'manifest' is not suitable, is it ?
>
> ----------------------------------------------------------------------
> [FUJIWARA Katsunori] foozy at lares.dti.ne.jp
--
Mathematics is the supreme nostalgia of our time.
More information about the Mercurial-devel
mailing list