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

From: Mark Lundquist <[email-masked]>
Date: Fri, 06 Jun 2008 22:51:40 -0700

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

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

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 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—