From: "Joakim Tjernlund" <joakim.tjernlund@transmode.se>
To: "'Eric Wong'" <normalperson@yhbt.net>
Cc: "'Junio C Hamano'" <gitster@pobox.com>,
"'Steven Grimm'" <koreth@midwinter.com>, <git@vger.kernel.org>
Subject: RE: [PATCH] git-svn: allow dcommit to retain local merge information
Date: Thu, 21 Jun 2007 18:54:25 +0200 [thread overview]
Message-ID: <042701c7b424$d31bdf30$0e67a8c0@Jocke> (raw)
In-Reply-To: <20070620065600.GA25010@muzzle>
> -----Original Message-----
> From: Eric Wong [mailto:normalperson@yhbt.net]
> Sent: den 20 juni 2007 08:56
> To: Joakim Tjernlund
> Cc: Junio C Hamano; Steven Grimm; git@vger.kernel.org
> Subject: Re: [PATCH] git-svn: allow dcommit to retain local
> merge information
>
> Joakim Tjernlund <joakim.tjernlund@transmode.se> wrote:
> > On Wed, 2007-06-13 at 02:23 -0700, Eric Wong wrote:
> > > dcommit will still rewrite the HEAD commit and the
> history of the first
> > > parents of each HEAD~1, HEAD~2, HEAD~3 as it always has.
> > >
> > > However, any merge parents (HEAD^2, HEAD^^2, HEAD~2^2) will now be
> > > preserved when the new HEAD and HEAD~[0-9]+ commits are
> rewritten to SVN
> > > with dcommit. Commits written to SVN will still not have
> any merge
> > > information besides anything in the commit message.
> > >
> > > Thanks to Joakim Tjernlund, Junio C Hamano and Steven Grimm
> > > for explanations, feedback, examples and test case.
> > >
> > > Signed-off-by: Eric Wong <normalperson@yhbt.net>
> > > ---
> > >
> > > This is a better patch that replaces the previous one.
> > >
> > > Junio:
> > > This one is a big change and should probably sit in pu or next
> > > for a bit. Double-checking the logic in linearize_history()
> > > would be greatly appreciated, too.
> > >
> > > I don't think there are any regressions for the
> > > already-linear-history case besides slightly reduced
> performance for
> > > new calls to cat-file.
> > >
> > > Joakim/Steven:
> > > Any further testing and test cases would be
> appreciated. Be very
> > > careful with real-world repositories, and run dcommit with the
> > > '-n' flag before actually committing to verify the
> diffs are sane.
> > >
> > > Thanks
> > >
> >
> > Did a little testing and so far it looks good :)
> >
> > Sidenote:
> > Doing this
> > git-svn init -t tags -T trunk -b branches
> file:///usr/local/src/tst-git-svn/svn-uboot-repo
> > git-svn fetch --quiet
> > makes git svn fetch stop for rather long periods in do_update:
> > Found possible branch point:
> file:///usr/local/src/tst-git-svn/svn-uboot-repo/trunk =>
> file:///usr/local/src/tst-git-svn/svn-uboot-repo/tags/snap-ubo
> ot-1.1.4, 2
> > Found branch parent: (tags/snap-uboot-1.1.4)
> 81eef14963597cc99ba375f52e6d0b3bc09e25f8
> > Following parent with do_update
> > Successfully followed parent
> >
> > Is it possible to speed up do_update?
>
> Use a do_switch()-enabled SVN to avoid do_update(). do_update will
> redownload everything. I have patched 1.4.3 debian packages
> with source
> and a diff here: http://git-svn.bogomips.org/svn. SVN 1.4.4 claims to
> have fixed the bindings, but 1.4.3 claimed the same thing, too...
> Confirmation of it working in SVN 1.4.4 would be nice.
Confirmed as requested, I installed 1.4.4(Gentoo) an ran the
same test case. Now I see "Following parent with do_switch"
instead and it is almost instant. It felt though that
git-svn was somewhat slower importing large diffs.
Jocke
>
> > Lastly, when adding the above u-boot svn repo into a fresh u-boot
> > clone from WD, can I attach the svn tree to git u-boot tree without
> > using a graft?
>
> Not with the current version. The 1.5.0 (or previous, I
> forget) allowed
> forced-parenting with: "git-svn fetch <rev>=<commit>" but I figured
> nobody was using it, and it would be difficult to get working since
> fetch can now works on multiple trees and the same revision
> numbers can
> appear in multiple trees.
If you reconsider this, please let me know.
Jocke
next prev parent reply other threads:[~2007-06-21 16:54 UTC|newest]
Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-06-08 17:25 git-svn set-tree bug Joakim Tjernlund
2007-06-10 1:47 ` Eric Wong
2007-06-10 17:21 ` Joakim Tjernlund
2007-06-10 17:27 ` Joakim Tjernlund
2007-06-10 21:33 ` Eric Wong
2007-06-10 23:27 ` Joakim Tjernlund
2007-06-10 23:37 ` Steven Grimm
2007-06-10 23:55 ` Joakim Tjernlund
2007-06-11 4:25 ` Eric Wong
2007-06-11 5:52 ` Junio C Hamano
2007-06-12 7:20 ` Eric Wong
2007-06-12 7:34 ` Junio C Hamano
2007-06-12 8:39 ` Eric Wong
2007-06-12 9:21 ` Joakim Tjernlund
2007-06-12 12:15 ` Steven Grimm
2007-06-13 9:23 ` [PATCH] git-svn: allow dcommit to retain local merge information Eric Wong
2007-06-13 17:13 ` Joakim Tjernlund
2007-06-13 23:17 ` Joakim Tjernlund
2007-06-20 7:04 ` Eric Wong
2007-06-20 6:56 ` Eric Wong
2007-06-21 16:54 ` Joakim Tjernlund [this message]
2007-07-01 13:09 ` Joakim Tjernlund
2007-06-14 6:30 ` Steven Grimm
2007-06-22 11:55 ` Joakim Tjernlund
2007-06-12 8:04 ` git-svn set-tree bug Lars Hjemli
2007-06-11 6:58 ` Steven Grimm
2007-06-11 8:52 ` Joakim Tjernlund
-- strict thread matches above, loose matches on Subject: below --
2007-06-23 17:56 [PATCH] git-svn: allow dcommit to retain local merge information Tjernlund
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='042701c7b424$d31bdf30$0e67a8c0@Jocke' \
--to=joakim.tjernlund@transmode.se \
--cc=git@vger.kernel.org \
--cc=gitster@pobox.com \
--cc=koreth@midwinter.com \
--cc=normalperson@yhbt.net \
/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).