git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Yann Dirson <ydirson@altern.org>
To: Ryan Anderson <ryan@michonline.com>
Cc: git@vger.kernel.org
Subject: Re: [RFC] Applying a graft to a tree and "rippling" the changes through
Date: Fri, 18 Nov 2005 00:07:23 +0100	[thread overview]
Message-ID: <20051117230723.GD26122@nowhere.earth> (raw)

Ryan wrote:
> Junio wrote:
> > Also another rhetorical, tongue-in-cheek question.  What is your
> > plan to ripple the graft through to update signed tags?  ;-)
> 
> :) Well, since I can't resist answering your rhetorical question:
> 
> They signed a specific DAG.  I'm providing a richer, more complete DAG
> that is a pure-superset of the one they signed.  It is not, however,
> equivalent, so their signature is not related to the superset DAG I have
> created.  In practice, however, I don't expect that any tag-signers
> would state that there is a meaningful difference between the two DAGs,
> from the perspective of their signature.

Well, that seems the perfect place to mention an idea that's running
in my head since a couple of days, related to the grafing problem.
I'll write it here in case the idea would look interesting to others,
who may then find a solution to the problem stated by Junio.

Current commit objects refer to a child tree, but to parent _commits_.
Whereas it seems necessary to walk through the history line, and
easily get a changelog, it is semantically quite not right: the
changes we record with a commit indeed come from modification of
trees, not of commits.  That is, the resulting tree does not depend on
the history of the parent trees, but on the parent trees themselves.
And similarly, tags usually denote a particular state of the tree,
"somewhat" independantly of its history: linux-2.6.11 is the same
beast, whereas the repository holds full history since 0.1 or not.

Indeed that emphasizes that the history lines are on living on a
higher level of abstraction that commits.  Now what if we used
trees->tree commits, instead of the current commits->tree ones ?  The
main problem would be to be able to reconstruct those history lines,
so that we can still extract the log - what's a better model if we
loose functionnality ? ;)

However, I must admit that at this point, I have not found a
reasonable solution to this problem.

Any genius with a solution out there ? :)
-- 
Yann Dirson    <ydirson@altern.org> |
Debian-related: <dirson@debian.org> |   Support Debian GNU/Linux:
                                    |  Freedom, Power, Stability, Gratis
     http://ydirson.free.fr/        | Check <http://www.debian.org/>

             reply	other threads:[~2005-11-17 23:06 UTC|newest]

Thread overview: 29+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-17 23:07 Yann Dirson [this message]
2005-11-17 23:28 ` [RFC] Applying a graft to a tree and "rippling" the changes through Johannes Schindelin
2005-11-19 14:04   ` Yann Dirson
2005-11-19 14:13     ` Yann Dirson
2005-11-19 15:27       ` Johannes Schindelin
2005-11-19 17:09         ` Yann Dirson
2005-11-19 17:23           ` Matthias Urlichs
2005-11-20  1:24             ` Johannes Schindelin
2005-11-20  7:32               ` Matthias Urlichs
2005-11-20 11:44                 ` Johannes Schindelin
2005-11-20 22:35                   ` Yann Dirson
2005-11-23  3:29                 ` Paul Mackerras
2005-11-23  7:27                   ` Matthias Urlichs
2005-11-23 17:14                     ` Linus Torvalds
2005-11-20 22:32               ` Yann Dirson
2005-11-20 23:46                 ` Johannes Schindelin
2005-11-21  2:24                   ` Matthias Urlichs
2005-11-21  5:18                     ` Ryan Anderson
2005-11-21 22:30                     ` Yann Dirson
2005-11-18 13:57 ` sf
2005-11-18 17:25   ` Linus Torvalds
2005-11-19  0:49     ` Junio C Hamano
2005-11-19  1:07       ` Linus Torvalds
2005-11-19  1:21         ` Junio C Hamano
2005-11-19  1:29           ` Linus Torvalds
2005-11-19 13:27           ` Yann Dirson
2005-11-19  1:38   ` Yann Dirson
2005-11-18 15:54 ` Josef Weidendorfer
2005-11-19 13:16   ` Yann Dirson

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=20051117230723.GD26122@nowhere.earth \
    --to=ydirson@altern.org \
    --cc=git@vger.kernel.org \
    --cc=ryan@michonline.com \
    /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).