From: Jonathan Nieder <jrnieder@gmail.com>
To: Phillip Susi <psusi@cfl.rr.com>
Cc: git@vger.kernel.org, Christian Couder <chriscool@tuxfamily.org>,
Stephen Bash <bash@genarts.com>
Subject: Re: clone breaks replace
Date: Fri, 7 Jan 2011 15:49:07 -0600 [thread overview]
Message-ID: <20110107214907.GA9194@burratino> (raw)
In-Reply-To: <4D278930.7010100@cfl.rr.com>
Phillip Susi wrote:
> Take the kernel history as an example, only imagine that Linus did not
> originally make that first commit leaving out the prior history, but
> wants to go back and fix it now. He can do it with a replace, but then
> if he runs filter-branch as you suggest to make the change 'real', then
> everyone tracking his tree will fail the next time they try to pull.
> You could get the same result without replace, so why bother?
>
> If the replace was fetched by default, the people already tracking would
> get it the next time they pull and would not have a problem.
Interesting. I hadn't thought about this detail before.
> Those cloning the repository for the first
> time would get it, and avoid fetching all of the old history since they
> would be using the replace record in place of the original commit.
No, it doesn't work that way. Imagine for a moment that each commit
object actually contains all of its ancestors. That isn't precisely
right but in a way it is close.
To change the ancestry of a commit, you really do need to change its
name. If you disagree, feel free to try it and I'd be glad to help
where I can with the coding if the design is sane. Deal?
Maybe it would be nice if git replace worked that way, but that would
be fundamentally a _different_ feature.
next prev parent reply other threads:[~2011-01-07 21:49 UTC|newest]
Thread overview: 34+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-01-06 21:00 clone breaks replace Phillip Susi
2011-01-06 21:33 ` Jonathan Nieder
2011-01-06 21:59 ` Junio C Hamano
2011-01-07 19:43 ` Phillip Susi
2011-01-07 20:51 ` Jonathan Nieder
2011-01-07 21:15 ` Stephen Bash
2011-01-07 21:34 ` Jonathan Nieder
2011-01-07 21:44 ` Phillip Susi
2011-01-07 21:49 ` Jonathan Nieder [this message]
2011-01-07 22:09 ` Phillip Susi
2011-01-07 22:09 ` Jeff King
2011-01-07 22:58 ` Junio C Hamano
2011-01-11 5:36 ` Jeff King
2011-01-11 17:40 ` Junio C Hamano
2011-01-11 17:50 ` Jeff King
2011-01-11 17:56 ` Jonathan Nieder
2011-01-11 18:03 ` Jeff King
2011-01-11 19:32 ` Christian Couder
2011-01-08 0:43 ` Phillip Susi
2011-01-11 5:47 ` Jeff King
2011-01-11 6:52 ` Jonathan Nieder
2011-01-11 15:37 ` Phillip Susi
2011-01-11 18:22 ` Jonathan Nieder
2011-01-11 18:42 ` Phillip Susi
2011-01-11 15:24 ` Phillip Susi
2011-01-11 17:39 ` Jeff King
2011-01-11 19:48 ` Johannes Sixt
2011-01-11 19:51 ` Jeff King
2011-01-11 20:00 ` Johannes Sixt
2011-01-11 20:22 ` Phillip Susi
2011-01-11 20:50 ` Jonathan Nieder
2011-01-12 0:59 ` Phillip Susi
2011-01-14 20:53 ` small downloads and immutable history (Re: clone breaks replace) Jonathan Nieder
2011-01-15 5:27 ` Phillip Susi
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=20110107214907.GA9194@burratino \
--to=jrnieder@gmail.com \
--cc=bash@genarts.com \
--cc=chriscool@tuxfamily.org \
--cc=git@vger.kernel.org \
--cc=psusi@cfl.rr.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 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.