From: "Shawn O. Pearce" <spearce@spearce.org>
To: David Reitter <david.reitter@gmail.com>
Cc: Junio C Hamano <gitster@pobox.com>, git@vger.kernel.org
Subject: Re: Importing Bzr revisions
Date: Mon, 23 Mar 2009 06:55:04 -0700 [thread overview]
Message-ID: <20090323135504.GA9732@spearce.org> (raw)
In-Reply-To: <03AC7EDA-2A9F-4626-A67B-CE9F2A88FC7D@gmail.com>
David Reitter <david.reitter@gmail.com> wrote:
>
> I'm just experimenting with "bzr fast-export", which converts to git,
> and it seems to take about 4 minutes for 1000 revisions on our (modern)
> server. That would be around 7 hours for my emacs repository; I can't do
> that daily.
No, you'd want to incrementally do that...
> I wonder if there's a way for (bzr) fast-export / (git) fast-import to
> work incrementally, i.e. for selected or most recent revisions.
fast-import supports incremental use; git-p4 does it from Perforce.
The trick is the application writing the stream (bzr fast-export
in this case) needs to do something to pick up the prior revisions.
It might do that by using the same mark numbers, and requiring you
to use --import-marks and --export-marks on the git side to save the
mark database between runs. I don't know, I haven't looked at it.
> Or, one could do something like bzr diff -r $REV.. $BBRANCH | (cd
> $GBRANCH; patch -p0; git commit), plus preserving authors and log
> messages. Is this roughly what the fast-export format does anyways?
Eh, sort of.
The fast-import format works on whole files, not patches. So we
have to get the entire file from bzr each time it is modified.
If the file is a small source file, you almost can't tell the
difference in performance. If its a huge binary that changes often,
it hurts to keep dumping the entire thing over the stream.
But at the commit level, yes, it preserves authorship and log
messages, assuming the bzr fast-export program incldued that data.
And I'm rather certain it does.
--
Shawn.
next prev parent reply other threads:[~2009-03-23 13:56 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-03-23 3:33 Importing Bzr revisions David Reitter
2009-03-23 8:06 ` Junio C Hamano
2009-03-23 12:13 ` David Reitter
2009-03-23 13:27 ` David Reitter
2009-03-23 13:55 ` Shawn O. Pearce [this message]
2009-03-23 14:07 ` Teemu Likonen
2009-03-26 3:05 ` David Reitter
2009-03-23 14:18 ` Pieter de Bie
2009-03-23 15:18 ` David Reitter
2009-03-23 20:15 ` Pieter de Bie
2009-03-23 21:00 ` David Reitter
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=20090323135504.GA9732@spearce.org \
--to=spearce@spearce.org \
--cc=david.reitter@gmail.com \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.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.