git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stephen Bash <bash@genarts.com>
To: David Michael Barr <david.barr@cordelta.com>
Cc: Ramkumar Ramachandra <artagnon@gmail.com>,
	Matt Stump <mstump@goatyak.com>,
	git@vger.kernel.org, Jonathan Nieder <jrnieder@gmail.com>,
	Sverre Rabbelier <srabbelier@gmail.com>,
	Tomas Carnecky <tom@dbservice.com>
Subject: Re: Converting to Git using svn-fe (Was: Speeding up the initial git-svn fetch)
Date: Tue, 19 Oct 2010 10:57:25 -0400 (EDT)	[thread overview]
Message-ID: <28402633.527046.1287500245894.JavaMail.root@mail.hq.genarts.com> (raw)
In-Reply-To: <126B270C-AEB2-4632-A2CD-E8F2AAE20A62@cordelta.com>

----- Original Message -----
> From: "David Michael Barr" <david.barr@cordelta.com>
> To: "Stephen Bash" <bash@genarts.com>
> Sent: Tuesday, October 19, 2010 10:28:03 AM
> Subject: Re: Converting to Git using svn-fe (Was: Speeding up the initial git-svn fetch)
> 
> So, I think there's two valuable nuggets per commit omitted at the
> moment in svn-fe.
> Firstly, the longest common root between all paths in the commit,
> which can be computed efficiently.
> Secondly, the copyfrom_rev and copyfrom_path for the copy operation
> that targets the common root.
> The second nugget can be noted while computing the first.
> From my reading of buildSVNTree.pl, these two nuggets drive the
> mapping logic.

Yep, they're the triggers, then the heuristics just filter out the noise SVN encourages because of light copies (or cruft from cvs2svn).

Just watch out for svn mv operations.  They produce a single commit with an Add (with copyfrom_* set) and a Delete.  So in the /project -> /trunk/project case, you're common path is /.  I didn't have that case, but I did have a /trunk cp-> /branches/tagName (oops!) mv-> /tags/tagName and a /trunk cp-> /branchName (oops!) mv-> /branches/branchName (honestly I much preferred the cases where the user deleted the wrong location and then created a new copy in the right place -- there are a ton of those which I didn't bother to capture the misstep in the middle).

Thanks,
Stephen

  reply	other threads:[~2010-10-19 14:57 UTC|newest]

Thread overview: 52+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-10-13 15:44 Speeding up the initial git-svn fetch Matt Stump
2010-10-13 16:02 ` Stephen Bash
2010-10-13 17:47   ` Matt Stump
2010-10-13 18:18     ` Stephen Bash
2010-10-14 16:22     ` Converting to Git using svn-fe (Was: Speeding up the initial git-svn fetch) Stephen Bash
2010-10-14 16:34       ` Jonathan Nieder
2010-10-14 20:07         ` Sverre Rabbelier
2010-10-15 14:50           ` Stephen Bash
2010-10-15 23:39             ` Sverre Rabbelier
2010-10-16  0:16               ` Stephen Bash
2010-10-17  2:25                 ` Sverre Rabbelier
2010-10-17  3:33                   ` David Michael Barr
2010-10-18  5:17       ` Ramkumar Ramachandra
2010-10-18  7:31         ` Jonathan Nieder
2010-10-18 16:38           ` Ramkumar Ramachandra
2010-10-18 16:46             ` Sverre Rabbelier
2010-10-18 16:56               ` Jonathan Nieder
2010-10-18 17:16                 ` Ramkumar Ramachandra
2010-10-18 17:18                 ` Sverre Rabbelier
2010-10-18 17:28                   ` Jonathan Nieder
2010-10-18 18:10                     ` Sverre Rabbelier
2010-10-18 18:13                       ` Jonathan Nieder
2010-10-18 18:20                         ` Sverre Rabbelier
2010-10-18 18:25                           ` Jonathan Nieder
2010-10-18 18:35                             ` Sverre Rabbelier
2010-10-18 19:33                               ` Jonathan Nieder
2010-10-19  3:08                             ` Ramkumar Ramachandra
2010-10-19  0:40                           ` Stephen Bash
2010-10-19  1:42         ` Stephen Bash
2010-10-19  6:42           ` Ramkumar Ramachandra
2010-10-19 13:33             ` Stephen Bash
2010-10-19 14:28               ` David Michael Barr
2010-10-19 14:57                 ` Stephen Bash [this message]
2010-10-20  8:39             ` Will Palmer
2010-10-20 11:59               ` Jakub Narebski
2010-10-20 13:42                 ` Will Palmer
2010-10-20 20:44                   ` Jakub Narebski
2010-10-21  1:54                     ` mrevilgnome
2010-10-21  8:16                       ` Jakub Narebski
2010-10-21 13:49                         ` Stephen Bash
2010-10-21  9:08                     ` Will Palmer
2010-10-21 14:00                       ` Stephen Bash
2010-10-21 18:37                         ` Jakub Narebski
2010-10-21 21:27                           ` Stephen Bash
2010-10-21 22:49                             ` Jakub Narebski
2010-10-21 23:26                               ` Stephen Bash
2010-10-22 10:38                                 ` Jakub Narebski
2010-10-21 15:52                       ` Jakub Narebski
2010-10-21 16:16                         ` Jonathan Nieder
2010-10-20 14:05               ` Ramkumar Ramachandra
2010-10-20 14:21               ` Stephen Bash
2010-10-20 16:56                 ` Ramkumar Ramachandra

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=28402633.527046.1287500245894.JavaMail.root@mail.hq.genarts.com \
    --to=bash@genarts.com \
    --cc=artagnon@gmail.com \
    --cc=david.barr@cordelta.com \
    --cc=git@vger.kernel.org \
    --cc=jrnieder@gmail.com \
    --cc=mstump@goatyak.com \
    --cc=srabbelier@gmail.com \
    --cc=tom@dbservice.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 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).