From: Florian Achleitner <florian.achleitner2.6.31@gmail.com>
To: Jonathan Nieder <jrnieder@gmail.com>
Cc: Florian Achleitner <florian.achleitner.2.6.31@gmail.com>,
davidbarr@google.com, git@vger.kernel.org
Subject: Re: GSOC remote-svn
Date: Mon, 23 Jul 2012 11:42:17 +0200 [thread overview]
Message-ID: <2948040.5ceLh0WG3L@flomedio> (raw)
In-Reply-To: <20120722214333.GB680@burratino>
On Sunday 22 July 2012 16:43:33 Jonathan Nieder wrote:
> Hi,
>
> Florian Achleitner wrote:
> > After several mailing iterations, showing me that I was wrong, I found
> > what
> > the right point is, namely that the remote helper writes references to a
> > really private dir in refs/<remote name>/, it doesn't touch anything else,
> > and by advertising the 'refspec' capability, git-fetch knows where the
> > private refs are and updates non-private references according to the
> > fetch refspec in some post-processing in store_updated_refs.
>
> Right, that's fine. And you did a fine job of navigating the existing
> documentation (which could be improved, hint hint).
>
> What I am more concerned about is that you had code you sent a while
> ago for review, that this would have been obvious to David, Ram,
> Dmitry, or me if we had seen it, and yet none of us gave you that
> help. We are failing at _our_ job of giving you prompt advice and
> instead you have had to work on your own.
>
> Isn't it likely that there are multiple other bugs like that which
> still haven't been fixed?
>
> That's why I think we need to get into a habit of giving and getting
> feedback quickly and incrementally improving work. Soon, before the
> summer ends.
>
> [...]
>
> >> [23:01:10] <jrnieder> and it should not be named remote-svn, since we
> >
> > haven't pinned down details about the svn:: conversion yet. That's why
> > Dmitry's was called git-remote-svn-alpha)
> >
> > Ok. Why is that important? I think if it's not called remote-svn git
> > doesn't fid it as a helper for the 'svn' protocol.
>
> It finds it as a helper for the 'svn-alpha' protocol instead.
>
> The point is that when I perform the following steps:
>
> git clone svn://path/to/remote/repo
>
> ... wait a day, update git
>
> cd repo
> git pull
>
> nobody would expect the result to be a non-fast-forward update caused
> by the details of svn-to-git conversion changing. Using a name like
> testsvn or svn-alpha would help in managing expectations --- the
> remote helper is meant for experimentation for now and not meant to be
> something people can rely on for collaboration.
Ok, that makes sense. Renaming is easily done!
>
> > I wrote a small simulation script in python that mimics svnrdumps
> > behaviour by replaying an existing svn dump file from a start rev up to
> > an end rev to test incremental imports. I use it together with a little
> > testrepo shell script. Will need to bring that into t/ later, after
> > figuring out how the test framework works. As it's not finished it's not
> > published.
>
> Sounds neat --- how can one try it out?
I'll send a patch ...
>
> > Incremental import:
> > By reading the latest svn revision number from a note attached to the
> > private master ref, it starts future imports from the next svn revision.
> > That basically works well.
> > It doesn't reuse mark files. What's the point of reusing them? Dmitry's
> > svn- alpha did that.
> > All I need to know is the revision to start from and the branch i want to
> > add commits to, right? It now simply reads that from the note.
>
> The marks are used to handle copyfrom operations referring to older
> revisions. Are you sure you want to abandon them? Can you explain a
> little more about your plan?
Ok, that makes sense. I didn't need the marks for incremental import. But to
evaluate the copyfrom props we need some revision->sha1 mapping.
I just added the options to save and import marks to fast-import's command
line.
If the file is missing, it will need to be generated from the notes, or the
whole history will be reimported.
But when I fetch from a git repo that imported from svn, the notes are not
fetched automatically. In this case I currently loose marks and notes.
What can I do?
Florian
next prev parent reply other threads:[~2012-07-23 10:28 UTC|newest]
Thread overview: 21+ messages / expand[flat|nested] mbox.gz Atom feed top
2012-07-22 21:03 GSOC remote-svn Florian Achleitner
2012-07-22 21:43 ` Jonathan Nieder
2012-07-23 9:42 ` Florian Achleitner [this message]
2012-07-23 12:04 ` Jonathan Nieder
2012-07-23 12:44 ` [PATCH] Add a svnrdump-simulator replaying a dump file for testing Florian Achleitner
2012-07-23 12:59 ` Jonathan Nieder
2012-07-23 13:16 ` Florian Achleitner
2012-07-23 13:16 ` Florian Achleitner
2012-07-23 16:24 ` Matthieu Moy
2012-07-23 19:28 ` Florian Achleitner
2012-07-23 19:46 ` Matthieu Moy
2012-07-23 20:02 ` Jeff King
2012-07-23 15:06 ` Junio C Hamano
2012-07-23 20:08 ` Florian Achleitner
2012-07-23 20:38 ` Junio C Hamano
2012-07-24 19:50 ` Jonathan Nieder
2012-07-25 6:20 ` Florian Achleitner
2012-07-24 12:06 ` Erik Faye-Lund
2012-07-23 7:59 ` GSOC remote-svn Matthieu Moy
2012-07-23 11:59 ` Jonathan Nieder
2012-07-23 9:42 ` Florian Achleitner
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=2948040.5ceLh0WG3L@flomedio \
--to=florian.achleitner2.6.31@gmail.com \
--cc=davidbarr@google.com \
--cc=florian.achleitner.2.6.31@gmail.com \
--cc=git@vger.kernel.org \
--cc=jrnieder@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).