From: Shawn O. Pearce Date: Mon, 27 Jul 2009 18:35:17 GMT Subject: Re: [RFC 06/11] Add support for mark references as path names Message-ID: <20090727183517.GN11191@spearce.org> In-Reply-To: <200907272026.46150.johan@herland.net> Johan Herland wrote: > On Monday 27 July 2009, Shawn O. Pearce wrote: > > I think you need to find another back door, something that the > > language wouldn't have considered as valid previously. > > Ok. One (moderately hideous) option is to introduce new commands m/d/r/c > that works just like M/D/R/C, except that they also expand mark > references (leaving M/D/R/C with the old behaviour). I don't know how > you'd feel about that... Bleh. Because I think this has more truth to it: > However, I'm also pondering Dscho's idea of organizing note trees into > hierarchies (to limit #entries in tree objects), and (although I have > yet to try to implement this) it feels like this transformation should > be done in the notes.c code, which means that it must happen on > the "git side" of fast-import (at least the transformation should not > happen on the "external side" of fast-import). This ultimately means > that we cannot handle notes as "regular" trees and commits (which is > what I'm trying to do with the help of this patch), and suggests that > instead of using 'commit' with 'M' for adding notes, we should probably > have a dedicated 'note' fast-import command that collects note objects, > and does the tree transformation and subsequent commit upon > checkpoint/exit. Exactly. We probably want to do this instead. Though you might want the "note" command to be a subcommand of commit, like M/D/R/C are, because notes are wrapped up inside of a commit and you can modify multiple notes in a single commit. -- Shawn.