From: david@lang.hm
To: Junio C Hamano <gitster@pobox.com>
Cc: "Johannes Schindelin" <Johannes.Schindelin@gmx.de>,
"Daniel Barkalow" <barkalow@iabervon.org>,
"martin f krafft" <madduck@madduck.net>,
git@vger.kernel.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
Date: Sun, 16 Sep 2007 15:52:23 -0700 (PDT) [thread overview]
Message-ID: <Pine.LNX.4.64.0709161541330.24221@asgard.lang.hm> (raw)
In-Reply-To: <7v7imq5ki0.fsf@gitster.siamese.dyndns.org>
On Sun, 16 Sep 2007, Junio C Hamano wrote:
> david@lang.hm writes:
>
>>> I'd rather not implement it at such a low level where a true
>>> "checkout" happens. For one thing, I am afraid that the special
>>> casing will affect the normal codepath too much and would make
>>> it into a maintenance nightmare.
>>
>> as I understand it, at this point you already choose between three
>> options.
>>
>> 1. write to a file (and set the write bit if needed)
>> 2. write to stdout
>> 3. write to a pager program
>>
>> I am suggesting adding
>> ...
>> or am I missing something major here?
>
> I do not think we are choosing any option in the codepath at
> all.
>
> What I mean by the normal "checkout" is what checkout_entry in
> entry.c does. There is no other option than (1) above. I would
> want to see an extremely good justification if you need to touch
> that codepath to implement this fringe use case.
>
> I do not think there is nothing that writes file contents to
> stdout/pager other than "git cat-file" or "git show"; I do not
> think they are what you have in mind when talking about managing
> the files under /etc. So unfortunately I do not understand the
> rest of the discussion you made in your message.
Ok, I thought that there was common code for these different uses. could
you re-read the rest of the logic based on the change being done in
checkout_entry?
if you are unwilling to have any changes made to the checkout_entry code
then the only remaing question is what you think of Daniel's suggestion to
have a hook to replace check_updates()?
if it's not acceptable either then we are down to doing a post-checkout
trigger.
one concern I have with that approach is how to deal with partial
checkouts. if a user checks out one file how can the post-checkout trigger
know if it's looking at the correct permissions file as opposed to one
left over from something else? can/should it go and read the file from the
index instead of reading the file on the filesystem? (I don't like this
becouse it leads to non-obvious behavior), or can/should there be a config
option to say that whenever any file is checked out the permissions file
needs to be checked out as well.
a post checkout trigger is useful in enough different situations that the
answers to the above questions don't eliminate the usefulness of the
trigger, they just map out the pitfalls of useing it.
David Lang
next prev parent reply other threads:[~2007-09-16 22:52 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 ` david [this message]
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.0709161541330.24221@asgard.lang.hm \
--to=david@lang.hm \
--cc=Johannes.Schindelin@gmx.de \
--cc=barkalow@iabervon.org \
--cc=david@hardeman.nu \
--cc=francis.moro@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--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).