git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Jon Seymour <jon.seymour@gmail.com>
To: Git Mailing List <git@vger.kernel.org>
Subject: Re: [PATCH] [RFD] Add repoid identifier to commit
Date: Fri, 13 May 2005 03:09:54 +1000	[thread overview]
Message-ID: <2cfc403205051210093e1a396d@mail.gmail.com> (raw)
In-Reply-To: <20050512162023.GA14010@delft.aura.cs.cmu.edu>

On 5/13/05, Jan Harkes <jaharkes@cs.cmu.edu> wrote:
> >
> > Ln
> > |     \
> > Ln-1  Fn
> > |         |
> > Ln-2  Fn-1
> > |       /
> > Ln-3
> 
> It breaks when Fn was a pull from Ln-1, and Ln was a fast-forward to Fn.
> Now the first parent is going to be Fn-1 and the history of the local
> repository after the fast forward warps to
> 
>     Fn (== Ln)
>     Ln-1
>     Ln-2
>     Fn-1
>     Ln-3
> 

Yep, you are right.

> Which I believe is exactly what Thomas wants to see in this case. I
> don't see how repoid's can be useful for this. It is a porcelain thing
> where you need to track what you have seen before. Anything else doesn't
> matter because most permutations of the history are perfectly valid
> since the Fn and Ln changes in reality occured in parallel and as a
> result can be arbitrarily interleaved.
> 

I may be wrong, but I don't think Thomas is interested in his own
repository. I think he is interested in the history of commits found
in any public repository. Therefore, he needs an algorithm that
doesn't rely on locally cached information.

In otherwords, at each point in the commit graph, what did the
committer consider as "foreign" changes that needed to be merged into
the "local" repository to progress the repository forward. He wants to
derive that order only from the information in the repository itself -
everyone given the same commit graph should reach the same conclusion
as to what the committer saw as local and foreign at the time of the
commit.

My previous algorithm was incorrect, but I suspect it could probably
be fixed with a 2-pass algorithm that marked any nodes in the path
between the merge base and the merge head as local and then ensured
that nodes marked that way are sorted after any nodes reached via
"foreign" paths.
-- 
homepage: http://www.zeta.org.au/~jon/
blog: http://orwelliantremors.blogspot.com/

  reply	other threads:[~2005-05-12 17:02 UTC|newest]

Thread overview: 74+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-05-11 21:38 [PATCH] [RFD] Add repoid identifier to commit Thomas Gleixner
2005-05-11 22:00 ` Sean
2005-05-11 22:05   ` Thomas Gleixner
2005-05-11 22:24     ` Sean
2005-05-11 22:30       ` Thomas Gleixner
2005-05-11 22:36         ` Sean
2005-05-11 22:48           ` Thomas Gleixner
2005-05-11 23:01             ` Sean
2005-05-11 23:33               ` Thomas Gleixner
2005-05-11 23:44                 ` Sean
2005-05-12  0:30                   ` Thomas Gleixner
2005-05-12  0:45                     ` Sean
2005-05-12  0:56                       ` Thomas Gleixner
2005-05-12  0:58                         ` Sean
2005-05-12 10:07                           ` David Woodhouse
2005-05-12 10:18                             ` Sean
2005-05-12 10:42                               ` Thomas Gleixner
2005-05-12 10:43                               ` David Woodhouse
2005-05-12 10:58                                 ` Sean
2005-05-12 10:39                             ` Sean
2005-05-11 23:14 ` H. Peter Anvin
2005-05-11 23:38   ` Thomas Gleixner
2005-05-11 23:40     ` H. Peter Anvin
2005-05-11 23:45       ` Sean
2005-05-12  0:04         ` H. Peter Anvin
2005-05-12  0:20           ` Sean
2005-05-12  0:33       ` Thomas Gleixner
2005-05-12  1:46         ` Junio C Hamano
2005-05-12  7:57           ` Thomas Gleixner
2005-05-12  9:32             ` Sean
2005-05-12  9:39               ` Thomas Gleixner
2005-05-12  9:46                 ` Sean
2005-05-12 11:18                   ` Thomas Gleixner
2005-05-12 11:24                     ` Sean
2005-05-12 11:43                       ` Thomas Gleixner
2005-05-12 11:48                         ` Sean
2005-05-12 12:16                           ` Thomas Gleixner
2005-05-12 12:16                             ` Sean
2005-05-12 12:34                               ` Thomas Gleixner
2005-05-12 12:35                                 ` Sean
2005-05-12 12:17                             ` Sean
2005-05-12 12:29                           ` David Woodhouse
2005-05-12 12:32                             ` Sean
2005-05-12 13:29                         ` Jan Harkes
2005-05-12 15:44                           ` Jon Seymour
2005-05-12 15:48                             ` Jon Seymour
2005-05-12 15:50                               ` Jon Seymour
2005-05-12 16:20                                 ` Jan Harkes
2005-05-12 17:09                                   ` Jon Seymour [this message]
2005-05-12 17:12                                     ` Jon Seymour
2005-05-12 17:35             ` Junio C Hamano
2005-05-12 18:18               ` Sean
2005-05-12 19:24                 ` Junio C Hamano
2005-05-12 19:35                   ` Sean
2005-05-12 20:47               ` Thomas Gleixner
2005-05-12 21:09                 ` Sean
2005-05-12 21:21                   ` Thomas Gleixner
2005-05-12 21:32                     ` Sean
2005-05-12 21:44                       ` Junio C Hamano
2005-05-12 22:06                       ` Thomas Gleixner
2005-05-12 22:24                         ` Sean
2005-05-12  0:41     ` Dmitry Torokhov
2005-05-12  0:44       ` Thomas Gleixner
2005-05-12  1:09         ` H. Peter Anvin
2005-05-12  1:13           ` H. Peter Anvin
2005-05-12  3:30             ` Joel Becker
2005-05-12  9:17             ` Thomas Gleixner
2005-05-13  1:37   ` [PATCH] [RFD] Add repoid identifier to commit [its a workspace id, isn't it?] Jon Seymour
2005-05-13  8:36     ` Thomas Gleixner
2005-05-13 22:25     ` Petr Baudis
2005-05-13 22:26       ` H. Peter Anvin
2005-05-13 23:39         ` Petr Baudis
2005-05-13 23:49       ` Jon Seymour
2005-05-14  5:02         ` Jon Seymour

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=2cfc403205051210093e1a396d@mail.gmail.com \
    --to=jon.seymour@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=jon@blackcubes.dyndns.org \
    /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).