[Numpy-discussion] Moving away from svn ?
Sat Jan 5 22:54:26 CST 2008
On Jan 5, 2008 4:21 PM, Chris Barker <Chris.Barker@noaa.gov> 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.
Change for the sake of change is bad. I thought I highlighted in my
email that the difficult point was how to make the change (transition,
importing the history, etc...), but instead, it quickly slipped to
using mercurial. I would have prefered to see what people thought was
important on how to proceed, but we all prefer to speak about which
tool to use instead :)
> 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?
Merge is a hard problem, but DVCS have to solve it to be of any use.
> 3) I read Linus' post -- he's quite articulate. However, it seems that
> most of his arguments really applied primarily to large projects --
> where there really will be a lot of different "central" versions. This
> is very, very, important to the Linux kernel, and probably good for kde,
> but scipy is a monstrously smaller community. And it's not a question of
> number of devs -- but rather number of versions.
> This makes me thing it really comes down to a better merge -- is there a
> way to address that problem with svn? maybe the svnmerge.py that Russel
svnmerge just does not cut it, when I was saying that merge in svn
does not work, I was not even considering basic svn merge, but
svnmerge. svnmerge does not change much: merge still fails more often
than not, and you have to do a lot of manual things. In DVCS, merge is
one command, you do not need to initialize anything when you start.
But DVCS is much more than better merge. And has nothing to do with
the size of the project.As I said, the whole concept of sandbox,
trying new things, is made harder by using svn; it really goes in the
way, instead of helping us.
> 4) SVN is very, very, popular. Lots of folks use it, they use it on all
> common platforms, and there are tons of clients for it. I work with a
> bunch of folks that really don't like a command line (for programmers, I
> think that's just plain weird, but there you go). I could never sell a
> VCS that didn't have a decent GUI client on Windows and OS-X.
I don't understand this argument: do your co-workers use scipy now but
would not if the code source would be kept under a VCS which has no
GUI ? scipy and python are fundamentally command line tools, and you
cannot contribute to scipy without using the command line. We do not
require python, distutils to have a gui ?
More information about the Numpy-discussion