All of lore.kernel.org
 help / color / mirror / Atom feed
From: A Large Angry SCM <gitzilla@gmail.com>
To: Junio C Hamano <junkio@cox.net>
Cc: Ryan Anderson <ryan@michonline.com>,
	git@vger.kernel.org, Linus Torvalds <torvalds@osdl.org>
Subject: Re: [PATCH 0/2] apply.c: a fix and an enhancement
Date: Fri, 22 Jul 2005 16:29:15 -0400	[thread overview]
Message-ID: <42E1571B.8070108@gmail.com> (raw)
In-Reply-To: <7vsly6vd2b.fsf@assigned-by-dhcp.cox.net>

Junio C Hamano wrote:
> Ryan Anderson <ryan@michonline.com> writes:
> 
>>On Fri, Jul 22, 2005 at 09:56:19AM -0700, Junio C Hamano wrote:
>>>Now if we had a mechanism to graft a later history which starts
>>>at 2.6.12-rc2 on top of this earlier history leading up to
>>>it,...  ;-)
>>We do - it's not even very hard, we just end up with 2 commits for every
>>change/merge that's unique to git, until we get to the current head:
> 
> Aren't you essentially rewriting the history after 2.6.12-rc2?.
> I suspect that would invalidate the current linux-2.6 history
> people have been basing their work on since 2.6.12-rc2, which is
> unacceptable.  That is not what I meant by "grafting".
> 
> What I meant was to give a hint to the core that says "this
> 2.6.12-rc2 commit in the current linux-2.6.git tree is recorded
> as not having a parent, but please consider it the same as this
> other 2.6.12-rc2 commit in the 2.4.0->2.6.12-rc2 history when
> traversing the commit ancestry chain".
> 
> If git-rev-list is taught about that, then you will see "git
> log" going across 2.6.12-rc2.  If git-merge-base is taught about
> that, it will be able to find a merge base to merge a line of
> development that is forked from say 2.6.11 to the current tip of
> linux-2.6 tree.

I think that "rewriting history" in this case may be the better option 
in _this_ case. But only because the tools are new and the users are 
understanding. :-)

To do it without the history rewrite, create an alternate_history 
directory under .git with it's own objects tree. And populate that 
object tree with "alternative" content for the objects in the normal 
trees. Then teach the things the lookup/read objects to look there first 
and to _not_ care about invalid SHAs. Of course, if you do this, you 
will never be able to trust your repository.

  parent reply	other threads:[~2005-07-22 20:30 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-07-22 16:56 [PATCH 0/2] apply.c: a fix and an enhancement Junio C Hamano
2005-07-22 18:18 ` Ryan Anderson
2005-07-22 19:46   ` Junio C Hamano
2005-07-22 20:16     ` Ryan Anderson
2005-07-22 20:29     ` A Large Angry SCM [this message]
2005-07-22 20:43       ` Linus Torvalds
2005-07-22 21:20         ` Junio C Hamano
2005-07-22 21:53           ` Linus Torvalds
2005-07-22 22:42             ` Santi Béjar
2005-07-22 22:55             ` Junio C Hamano
2005-07-22 23:26               ` Linus Torvalds
2005-07-22 23:39                 ` Petr Baudis
2005-07-23  0:20                 ` Junio C Hamano
2005-07-22 23:33             ` Petr Baudis
2005-07-22 23:50               ` Linus Torvalds
2005-07-22 23:59                 ` Petr Baudis

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=42E1571B.8070108@gmail.com \
    --to=gitzilla@gmail.com \
    --cc=git@vger.kernel.org \
    --cc=junkio@cox.net \
    --cc=ryan@michonline.com \
    --cc=torvalds@osdl.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.