From: martin f krafft <madduck@madduck.net>
To: git@vger.kernel.org
Cc: "Jan Hudec" <bulb@ucw.cz>,
"Johannes Schindelin" <Johannes.Schindelin@gmx.de>,
"Daniel Barkalow" <barkalow@iabervon.org>,
"Thomas Harning Jr." <harningt@gmail.com>,
"Francis Moreau" <francis.moro@gmail.com>,
"Nicolas Vilz" <niv@iaglans.de>,
"David Härdeman" <david@hardeman.nu>
Subject: Re: metastore (was: Track /etc directory using Git)
Date: Mon, 17 Sep 2007 15:31:05 +0200 [thread overview]
Message-ID: <20070917133105.GA17536@lapse.madduck.net> (raw)
In-Reply-To: <20070916155147.GA30476@efreet.light.src>
[-- Attachment #1: Type: text/plain, Size: 2121 bytes --]
also sprach Jan Hudec <bulb@ucw.cz> [2007.09.16.1751 +0200]:
> > If the filesystem does not support owners, chown() would not
> > exist. I actually tend to think of things the other way around:
> > instead of a fallback when chown() does not work (what would
> > such a fallback be other than not chown()ing?), it would only
> > try chown() if such functionality existed.
>·
> There's a problem. You need to know that the functionality is
> missing and not try to read attributes back, but instead consider
> them unchanged. Nothing that can't be taken care of, but it needs
> to be handled carefuly.
This is a good consideration. One way of implementing this seems to
be to iterate over all file attributes recorded in the object cache
(or metastore) and try to apply each. For every attribute that was
properly applied to the worktree, a note is attached to the object's
data in the index. Tools identifying differences between index and
worktree would then only pay attention to these attributes.
> But if you tar that up again, the owners will be different. But
> you don't want the change.
As per my above suggestion, this would solve itself. Untarring as
non-root simply means that the chmod/chown/whatever calls would fail
or not be tried at all. Thus, they would not be recorded in the
index and later commits would never consider changes to these
attributes.
One could probably simplify the implementation such that failure to
chmod/chown/whatever a single file would make the attribute be
ignored when worktree and index are compared. Then, it would all
boil down to a combination of configuration and functionality: the
attributes the user wants to have tracked (configuration) and those
which can be applied to the worktree when logically and'ed result in
the final mask of attributes to consider when identifying changes.
--
martin; (greetings from the heart of the sun.)
\____ echo mailto: !#^."<*>"|tr "<*> mailto:" net@madduck
a gourmet concerned about calories
is like a punter eyeing the clock.
spamtraps: madduck.bogus@madduck.net
[-- Attachment #2: Digital signature (see http://martin-krafft.net/gpg/) --]
[-- Type: application/pgp-signature, Size: 189 bytes --]
next prev parent reply other threads:[~2007-09-17 16:49 UTC|newest]
Thread overview: 72+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <38b2ab8a0709130511q7a506c5cvb0f8785a1d7ed7ad@mail.gmail.com>
[not found] ` <20070913123137.GA31735@piper.oerlikon.madduck.net>
[not found] ` <38b2ab8a0709140108v2a9c3569i93b39f351f1d4ec3@mail.gmail.com>
[not found] ` <20070914091545.GA26432@piper.oerlikon.madduck.net>
2007-09-14 17:31 ` Track /etc directory using Git Thomas Harning Jr.
2007-09-14 21:26 ` Nicolas Vilz
2007-09-15 14:29 ` Pierre Habouzit
2007-09-15 15:24 ` martin f krafft
2007-09-15 15:27 ` Pierre Habouzit
2007-09-15 15:42 ` martin f krafft
2007-09-15 13:26 ` metastore (was: Track /etc directory using Git) martin f krafft
2007-09-15 14:10 ` Johannes Schindelin
2007-09-15 14:16 ` metastore David Kastrup
2007-09-15 14:54 ` metastore (was: Track /etc directory using Git) martin f krafft
2007-09-15 16:22 ` Grzegorz Kulewski
2007-09-15 17:43 ` Johannes Schindelin
2007-09-15 23:33 ` metastore Randal L. Schwartz
2007-09-16 0:37 ` metastore david
2007-09-16 1:10 ` metastore Randal L. Schwartz
2007-09-16 1:49 ` metastore david
2007-09-17 13:04 ` metastore Francis Moreau
2007-09-17 15:32 ` metastore Randal L. Schwartz
2007-09-15 19:56 ` metastore (was: Track /etc directory using Git) Daniel Barkalow
2007-09-15 22:14 ` Johannes Schindelin
2007-09-16 1:30 ` david
2007-09-16 2:48 ` Johannes Schindelin
2007-09-16 3:00 ` david
2007-09-16 8:06 ` metastore Junio C Hamano
2007-09-16 8:30 ` metastore David Kastrup
2007-09-16 20:19 ` metastore david
2007-09-16 15:51 ` metastore Daniel Barkalow
2007-09-16 21:12 ` metastore david
2007-09-16 21:28 ` metastore Junio C Hamano
2007-09-16 21:45 ` metastore Daniel Barkalow
2007-09-16 21:53 ` metastore david
2007-09-16 22:02 ` metastore Daniel Barkalow
2007-09-16 22:37 ` metastore david
2007-09-17 13:30 ` metastore martin f krafft
2007-09-17 17:17 ` metastore david
2007-09-17 19:46 ` metastore Josh England
2007-09-16 21:45 ` metastore david
2007-09-16 22:11 ` metastore Junio C Hamano
2007-09-16 22:52 ` metastore david
2007-09-17 0:58 ` metastore Junio C Hamano
2007-09-17 2:31 ` metastore david
2007-09-17 4:23 ` metastore Junio C Hamano
2007-09-17 4:35 ` metastore david
2007-09-17 6:06 ` metastore Junio C Hamano
2007-09-17 17:42 ` metastore Daniel Barkalow
2007-09-17 19:19 ` metastore Junio C Hamano
2007-09-16 15:59 ` metastore (was: Track /etc directory using Git) Jan Hudec
2007-09-16 20:36 ` david
2007-09-16 6:14 ` martin f krafft
2007-09-16 15:51 ` Jan Hudec
2007-09-16 19:43 ` david
2007-09-17 13:31 ` martin f krafft [this message]
2007-09-16 1:35 ` david
2007-09-16 6:08 ` martin f krafft
2007-09-19 19:16 ` David Härdeman
2007-10-02 19:53 ` martin f krafft
2007-10-02 19:58 ` David Härdeman
2007-10-02 20:04 ` metastore David Kastrup
2007-10-02 20:18 ` metastore david
2007-10-02 20:23 ` metastore martin f krafft
2007-10-02 20:29 ` metastore david
2007-10-02 20:39 ` metastore martin f krafft
2007-10-02 20:54 ` metastore david
2007-10-02 21:42 ` metastore martin f krafft
2007-10-02 21:15 ` metastore David Härdeman
2007-10-02 21:44 ` metastore martin f krafft
2007-10-02 23:32 ` metastore Julian Phillips
2007-10-03 0:52 ` metastore david
2007-10-03 0:52 ` metastore Johannes Schindelin
2007-10-02 21:02 ` metastore (was: Track /etc directory using Git) Daniel Barkalow
[not found] ` <20070913122002.GO671@genesis.frugalware.org>
[not found] ` <38b2ab8a0709140120k50f5b474oc8a841ea0a5fda50@mail.gmail.com>
2007-09-15 16:32 ` Track /etc directory using Git martin f krafft
2007-09-15 16:57 ` David Kastrup
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=20070917133105.GA17536@lapse.madduck.net \
--to=madduck@madduck.net \
--cc=Johannes.Schindelin@gmx.de \
--cc=barkalow@iabervon.org \
--cc=bulb@ucw.cz \
--cc=david@hardeman.nu \
--cc=francis.moro@gmail.com \
--cc=git@vger.kernel.org \
--cc=harningt@gmail.com \
--cc=niv@iaglans.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 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).