git.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Stephen Bash <bash@genarts.com>
To: Will Palmer <wmpalmer@gmail.com>
Cc: Ramkumar Ramachandra <artagnon@gmail.com>,
	Matt Stump <mstump@goatyak.com>,
	git@vger.kernel.org, Jonathan Nieder <jrnieder@gmail.com>,
	David Michael Barr <david.barr@cordelta.com>,
	Sverre Rabbelier <srabbelier@gmail.com>,
	Tomas Carnecky <tom@dbservice.com>,
	Jakub Narebski <jnareb@gmail.com>
Subject: Re: Converting to Git using svn-fe (Was: Speeding up the initial git-svn fetch)
Date: Thu, 21 Oct 2010 10:00:04 -0400 (EDT)	[thread overview]
Message-ID: <4424833.537061.1287669604786.JavaMail.root@mail.hq.genarts.com> (raw)
In-Reply-To: <1287652097.9207.31.camel@wpalmer.simply-domain>

----- Original Message -----
> From: "Will Palmer" <wmpalmer@gmail.com>
> To: "Jakub Narebski" <jnareb@gmail.com>
> Sent: Thursday, October 21, 2010 5:08:17 AM
> Subject: Re: Converting to Git using svn-fe (Was: Speeding up the initial git-svn fetch)
> On Wed, 2010-10-20 at 22:44 +0200, Jakub Narebski wrote:
>
> It's tedious, but still fairly simple, to
> walk the history and build a new history consisting only of edits to a
> subtree (even if the commit messages don't always make sense out of
> context). It really doesn't matter one lick whether a single svn
> commit touched multiple generated git commits.

After reading your first entry into this thread, this is certainly what I was envisioning.  I'm still a little worried about initial clone size (over the weekend I had to wait over an hour for my full-svn-history git repository to clone from work to home), but it is certainly an intriguing idea.  With appropriate mapping information (copyfrom properties and some user input) I think you could create a very convincing Git history by creating commit objects using subtrees of the SVN-imported history.  I had been thinking about a very similar solution, but I was planning on pruning the original SVN-imported commit objects to save space...
 
> Of course, "ignoring merges" is temporary and a total cop-out

This is still bugging me...  Even with svn mergeinfo (which I think is a small percentage of the SVN revisions in the world), IMO an SVN merge is *not* a Git merge.  I think of it as a git cherry-pick (someone correct me if this mental model is wrong).  The key point in my mind is SVN merge doesn't have to merge the entire branch history.  Perhaps some heuristics can be applied in Git to decide if an SVN merge is a "true merge" or a cherry-pick?  But I have a nagging feeling that in the end the model mismatch is going to be very hard to overcome.

Thanks,
Stephen

  reply	other threads:[~2010-10-21 14:00 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
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 [this message]
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=4424833.537061.1287669604786.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=jnareb@gmail.com \
    --cc=jrnieder@gmail.com \
    --cc=mstump@goatyak.com \
    --cc=srabbelier@gmail.com \
    --cc=tom@dbservice.com \
    --cc=wmpalmer@gmail.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).