subversion

Peter Kahle pkahle at pobox.com
Wed Aug 9 23:25:24 EDT 2006


Stephen Adler wrote:
> Guys,
>
> I'm in the midst of setting up a project and I'm thinking of migrating 
> away from CVS and using subversion. Does anyone have any thoughts on 
> this, or any comments? Anyone with experience using subversion, if you 
> could comment, I certainly would like to read them.
>
> Thanks. Steve.
I feel like I'm parroting everyone else, but yes, do it.

One caveat though: Determine how you want to set up your repository 
early. Sure, you can move stuff around, but it just feels better when 
your second or third commit isn't a complete restructuring of the 
repository. Subversion doesn't really have tags or branches, just copies 
(copy-on-write), so the typical repository looks either like:

/branch
/branch/Project1
/branch/Project2
/tags
/tags/Project1
/trunk
/trunk/Project1

OR

/Project1
/Project1/branch
/Project1/branch/Some branch name
/Project1/tags
/Project1/tags/Version1.0
/Project1/trunk
/Project2
/Project2/branch
/Project2/branch/Some other branch name
/Project2/tags
/Project2/tags/Version2.0
/Project2/trunk

Pick one, and stick to it. I almost always use the first option, but now 
that I think about it, I think I'll use option 2 from here on out, since 
it would make it easier to dump the full history from one project to 
move to another repository. Another option is just to use a separate 
repository for each program.

Oh, and it's the default now, but using the "fsfs" (file system file 
system) back-end is MUCH better than the "dbfs" which has a tendency to 
break on bdb upgrades, even if you take a small hit in speed. Otherwise, 
do regular dumps (svnadmin --dump <repository url>) or you may get stuck.

P



More information about the Discuss mailing list