git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Daniel Barkalow <barkalow@iabervon.org>
To: martin f krafft <madduck@madduck.net>
Cc: git@vger.kernel.org,
	"Johannes Schindelin" <Johannes.Schindelin@gmx.de>,
	"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: Sat, 15 Sep 2007 15:56:42 -0400 (EDT)	[thread overview]
Message-ID: <Pine.LNX.4.64.0709151430040.5298@iabervon.org> (raw)
In-Reply-To: <20070915145437.GA12875@piper.oerlikon.madduck.net>

On Sat, 15 Sep 2007, martin f krafft wrote:

> also sprach Johannes Schindelin <Johannes.Schindelin@gmx.de> [2007.09.15.1610 +0200]:
> > No.  Git is a source code management system.  Everything else that
> > you can do with it is a bonus, a second class citizen.  Should we
> > really try to support your use case, we will invariably affect the
> > primary use case.
> 
> I thought git was primarily a content tracker... so it all comes
> down to how to define content, doesn't it? But either way, we need
> not discuss that because that definition depends a lot on context
> and purpose and thus cannot be answered once and for all.
> 
> I understand that for the primary use case, tracking nothing more
> than +x makes sense and should not be interfered with. This is why
> I was proposing a policy-based approach. The primary use case is
> unaffected, it's the default policy. Someone may choose to track
> other mode bits or file/inode attributes, according to one of
> several policies available with git, or even a custom policy. In
> that case, the repository needs to be appropriately configured.

Configuration options only apply to the local aspects of the repository. 
That is, when you clone a repository, you don't get the configuration 
options from it, in general. And changing configuration options on a 
repository does not have any effect on the content it contains. So 
configuration options aren't appropriate.

> The reason why I say this should be done inside git rather than with
> hooks and an external tool, such as metastore is quite simple: git
> knows about every content entity in any tree of a repo and already
> has a data node for each object. Rather than introducing a parallel
> object database (shadow hierarchy or single file), it would make
> a lot more sense and be way more robust to attach additional
> information to these object nodes, wouldn't it?

Git doesn't have any way to represent owners or groups, and they would 
need to be represented carefully in order to make sense across multiple 
computers. If you're adding support for metadata-as-content (for more than 
"is this a script?"), you should be able to cover all of the common cases 
of extended stuff, like AFS-style ACLs. And if you want to allow 
meaningful development with this mechanism (as opposed to just archival of 
a sequence of states of a live system), the normal case will be that the 
metadata beyond +x is manipulated by ordinary users in some way other than 
modifying their working directory. So the normal case here will be like 
working on a filesystem that doesn't support symlinks or an executable bit 
when this is important content.

	-Daniel
*This .sig left intentionally blank*

  parent reply	other threads:[~2007-09-15 19:56 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               ` Daniel Barkalow [this message]
2007-09-15 22:14                 ` metastore (was: Track /etc directory using Git) 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
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=Pine.LNX.4.64.0709151430040.5298@iabervon.org \
    --to=barkalow@iabervon.org \
    --cc=Johannes.Schindelin@gmx.de \
    --cc=david@hardeman.nu \
    --cc=francis.moro@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=harningt@gmail.com \
    --cc=madduck@madduck.net \
    --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).