Tools for Maintaining Branches in SVN
Posted
by Chris Conway
on Stack Overflow
See other posts from Stack Overflow
or by Chris Conway
Published on 2010-03-29T05:18:15Z
Indexed on
2010/03/29
5:23 UTC
Read the original article
Hit count: 523
My team uses SVN for source control. Recently, I've been working on a branch with occasional merges from the trunk and it's been a fairly annoying experience (cf. Joel Spolsky's "Subversion Story #1"), so I've been looking alternative ways to manage branches and merging. Given that a centralized SVN repository is non-negotiable, what I'd like is a set of tools that satisfy the following conditions.
Complete revision history should be stored in SVN for both trunk and branches.
Merging in either direction (and potentially criss-crossing) should be relatively painless.
Merging history should be stored in SVN to the greatest extent possible.
I've looked at both git-svn
and bzr-svn
and neither seems to be up to the job—basically, given the revision history they can export from the SVN repository, they can't seem to do any better a job handling merges than SVN can. For example, after cloning the repository with git
, the revision history for my branch shows the original branch off of trunk, but git
doesn't "see" any of the interim SVN merges as "native" merges—the revision history is one long line. As a result, any attempts to merge from trunk in git
yield just as many conflicts as an SVN merge would. (Besides, the git-svn
documentation explicitly warns against using git
to merge between branches.)
Is there a way to adjust my workflow to make git
satisfy the above requirements? Maybe I just need tips or tricks (or a separate merging tool?) to help SVN be better at merging into branches?
© Stack Overflow or respective owner