[Numpy-discussion] Moving away from svn ?
Sat Jan 5 01:38:01 CST 2008
Chris Barker wrote:
> hmmm. Everyone posting so far seems to be positive on this idea, but I'm
> not so sure. A few thoughts:
> 1) change is bad. It may be worth it, but this decision needs to be made
> very differently than if we were starting from scratch.
> 2) apparently svn merge sucks compared to other merge technology. svn
> (and cvs before it) is the only system I'm used, and yes, merging is
> painful, but I have to say that it appeared to be painful because it's a
> very hard problem. Can anyone comment on why these other systems seem so
> much better? Does it have anything to do with Centralized vs.
> Distributed at all?
Tangentially, yes. DVCSes need to keep track of more information in order to be
distributed. That information is extremely useful for managing merges properly.
Centralized systems could track this information, but they don't *need* to in
order to be functional, so they mostly haven't, yet.
For each revision, the DVCS knows what revisions it derives from. SVN does not
keep this information. SVN primarily just knows the text diffs from revision to
revision. In particular, if I have a long-lived branch, I am going to merge in
changes from the trunk while I'm working on it. When I go to merge the branch
back into the trunk, I need to know which trunk-revisions I've already merged
into the branch. SVN does not track this information. Tools like svnmerge.py
track some of this information at the expense of some added clumsiness.
It's worth noting that SVN 1.5 will be tracking such information. But that
release is a long ways off.
"I have come to believe that the whole world is an enigma, a harmless enigma
that is made terrible by our own mad attempt to interpret it as though it had
an underlying truth."
-- Umberto Eco
More information about the Numpy-discussion