Subject: Re: [noob] questions about git-svn, svk

From: Mark Lundquist <[email-masked]>
Date: Sat, 07 Jun 2008 13:22:33 -0700

ugh, I was tired when I wrote that post, it needs some 
corrections/clarifications...:

I wrote:

> Hi,
> 
> Okay, I'm an experienced SVN & SVK user, and I'm ready to start the 
> process of switching to git.  I just have a couple of questions...
> 
> I'm a complete noob to the ways of git, so plz bear with me :-)
> 
> All our projects are contained in our main svn repository, for the usual 
> reasons.  I've been mirroring that repository with SVK on my local 
> machine for the last year or two and using SVK as my Subversion 
> front-end.  So, I have all these working copies of various projects, and 
> of course these are all checkouts of SVK local branches (which under the 
> hood are svn copies of within the mirror, in the depot repository).
> 
> That was a lame explanation... if you know SVK then you alread know all 
> that, and if you don't then it doesn't matter anyway :-/ but the point 
> is that I have something like

(talking about the filesystem on my local development machine here...)

>     work/
>        projects/
>           project-A/
>         .
>         .
>           project-B/
>         .
>         .
>           project-C/
>         .
>         .

that is, project-A etc. are SVK working copies (checkouts)..

> 
> 
> So, I'd like to start out by using git-svn, just changing how I do my 
> own work and developing my git-fu before I roll this learning curve out 
> to the server side :-).
> 
> 
> 1) So I understand that each of project-A, project-B etc. will be a 
> local git repository, so.. how do init/clone/whatever these things to 
> track the remote svn repository, but so that they each just contain the 
> corresponding project, rather than all projects from the remote repo?
> 
> 2) Apparently, I can get the ball rolling by importing my SVK mirror 
> (using "git svn init --use-svm-props") instead of cloning the remote 
> repository directly... I was thinking to do that and save the long 
> network suck time.  But then since my git repo would be tracking my SVK 
> depot, I'd have to use SVK to mediate all my syncs (in SVK jargon) to 
> the remote.  Anyway, I don't have any desire to keep on using SVK, I 
> really just want to take advantage of my local depot mirror to speed up 
> the initial clone, then I want to cut the cord.  Is there a way to point 
> my git-svn repo at the remote Subversion repo after I import, and leave 
> the SVK mirror behind?
> 
> 3) One possibly (I don't know! :-) complicating factor... most of these 
> projects are actually web site implementations, and these all began life 
> as Subversion copies of a skeletal, "template" project that contains a 
> bunch of stuff to configure our web application framework, etc.  There's 
> some version history there that has some value and I'd like to preserve 
> it.  Any special considerations in view of that?
> 
> 4) Soon the time will come to switch to Subversion
                                           ^^^^^^^^^^

gaah! "git", not Subversion!  "Switch to git" is what I meant!

> on the server side. 
> Whatever that setup looks like, I'd like it to reflect git best 
> practices and not have anything that smells like "well yeah, this is 
> weird, but see, it's that way because these projects used to be 
> maintained under Subversion."  So, what will be the best way to "get 
> from here to there?"  And when I have that, will that then break my 
> git-svn project repositories that I am about to make on my local 
> machine?  Will I have to start over with all new project repos tracking 
> the git repos on the server?
> 
> Any help / ideas / random thoughts appreciated... :-)
> 
> cheers,
> —ml—
>