From: Junio C Hamano <gitster@pobox.com>
To: Benoit SIGOURE <tsuna@lrde.epita.fr>
Cc: martin f krafft <madduck@madduck.net>,
git discussion list <git@vger.kernel.org>
Subject: Re: confused about preserved permissions
Date: Wed, 22 Aug 2007 15:09:17 -0700 [thread overview]
Message-ID: <7v8x83i5ma.fsf@gitster.siamese.dyndns.org> (raw)
In-Reply-To: <6031FB22-648E-47DE-92EE-2E7255322C27@lrde.epita.fr> (Benoit SIGOURE's message of "Wed, 22 Aug 2007 14:18:19 +0200")
Benoit SIGOURE <tsuna@lrde.epita.fr> writes:
> Someone on IRC pointed me to http://git.or.cz/gitwiki/
> ContentLimitations which says:
>
> "By design, git cannot track other aspects of the filesystem, including:
> * File modes (except for the "executable" bit, and being symbolic
> link)"
>
> That's weird since the file mode is saved in the tree, isn't there a
> way to ask Git to restore this file mode?
The wording you quoted is wrong. By design, we "chose not to"
track other aspects, even though the underlying data structure
has enough space to use other bit patterns.
We deliberately chose not to use that space, and this default is
very unlikely to change.
In very early days of git, we allowed the work tree modes 0644
vs 0664 propagated back to the index modes and regular file
modes recorded in the tree entries. This caused unnecessary
pain for poeple merging real projects for no real gain
whatsoever, and the behaviour was fixed to minimally track,
hence we do not track anything but executable bits.
I do not oppose to a new per-project configuration option to
make use of the existing space to record differences vs 0644 vs
0664 vs 0600. However, I have already seen the downsides, so:
(1) I am not interested in implementing that myself;
(2) the places that canonicalize the mode bits obtained from
the filesystem to 0644 is fairly centralized so it would
not be too hard to implement (and that is one good reason
why I do _not_ have to be the person to do so);
(3) however, (2) means that everybody calls that
canonicalization logic, and the unintended side effects
need to be audited for codepaths of all the callers, which
means a large test suite is probably needed; and
(4) to me, reviewing such a patch will be much lower priority
than other patches for the above reasons.
next prev parent reply other threads:[~2007-08-22 22:09 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-08-20 16:44 confused about preserved permissions martin f krafft
2007-08-20 16:54 ` Pierre Habouzit
2007-08-20 17:38 ` martin f krafft
2007-08-20 17:41 ` Mike Hommey
2007-08-20 17:58 ` David Kastrup
2007-08-20 18:13 ` Mike Hommey
2007-08-20 18:44 ` David Kastrup
[not found] ` <86zm0mgicy.fsf@lola.quinscape.zz>
2007-08-20 18:48 ` Mike Hommey
2007-08-20 19:43 ` Jan Hudec
2007-08-20 19:50 ` Mike Hommey
2007-08-20 20:07 ` Alex Riesen
2007-08-20 20:10 ` Mike Hommey
2007-08-20 20:27 ` Jan Hudec
2007-08-20 20:42 ` David Kastrup
2007-08-20 20:44 ` Mike Hommey
2007-08-20 20:08 ` Jan Hudec
2007-08-20 20:39 ` David Kastrup
2007-08-20 20:50 ` Mike Hommey
2007-08-20 21:03 ` David Kastrup
2007-08-21 1:35 ` Shawn O. Pearce
2007-08-21 2:06 ` Junio C Hamano
2007-08-21 5:34 ` Mike Hommey
2007-08-21 6:04 ` David Kastrup
2007-08-21 18:01 ` René Scharfe
2007-08-21 18:01 ` [PATCH] Documentation: update tar.umask default René Scharfe
2007-08-21 21:15 ` Mike Hommey
2007-08-22 21:03 ` René Scharfe
2007-08-20 18:35 ` confused about preserved permissions Alex Riesen
2007-08-22 12:18 ` Benoit SIGOURE
2007-08-22 12:52 ` Johannes Sixt
2007-08-22 22:09 ` Junio C Hamano [this message]
2007-08-23 6:00 ` martin f krafft
2007-08-23 6:12 ` David Kastrup
2007-08-23 6:23 ` martin f krafft
2007-08-23 7:48 ` Benoit SIGOURE
2007-08-23 7:57 ` Junio C Hamano
2007-08-23 8:08 ` David Kastrup
2007-09-03 18:59 ` Jan Hudec
2007-08-23 7:03 ` 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=7v8x83i5ma.fsf@gitster.siamese.dyndns.org \
--to=gitster@pobox.com \
--cc=git@vger.kernel.org \
--cc=madduck@madduck.net \
--cc=tsuna@lrde.epita.fr \
/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).