Joel is wrong. Subversion does not equal leeches.
blog.beanstalkapp.com
blog.beanstalkapp.com
DVCS provides a much smarter workflow for merging and sharing code.
Just because it doesn't have a gui as sexy or user friendly as versions doesn't mean the technology isn't better which is the point of Joels quote
If you are using Subversion, stop it. Just stop. Subversion = Leeches. Mercurial and Git = Antibiotics. We have better technology now.
The technology is better, just as antibiotics are better. However sometimes the need still arises for leeches.
Aside: Both these posts are self serving posts about competing products. Beanstalk vs. Kiln.
The thing that pisses me off is people switching, with virtually no good reason, to the current trendy one. Probably because Joel says it's cool. Just pick one, use it religiously, and get on with writing some code.
Subversion's killer-app GUI is Tortoise, and Mercurial has a similar tool, too: TortoiseHg. (http://tortoisehg.bitbucket.org/)
So I don't think this is really a GUI problem.
or they could use beanstalk, i suppose?
In Git, every copy of the code is a repository. If you and a friend are on a train working on code hosted in an SVN repository, you have to jump through hoops without internet access. With Git, you can clone your branch onto a USB key, and then the other person can pull your changeset from that repo. Once you have internet access, either one of you can push the relevant changes to the origin server, or anywhere else for that matter.
You can create an SVN repo anywhere, but everyone has to use the same one. With Git, anyone can use any repo, and they can all interact.
For any develop who is at all serious about their craft, it's absolutely insane to go on using a crippled tool like subversion. However if you have a team of talentless monkey coders mixed with a generous helping of non-technical asset producers (designers, copywriters, etc), then modern VCS won't really give you any compelling benefit, so you are likely better off taking the better tooling.
In the long run Subversion would be better off if they just rewrote it on top of git plumbing, but barring that, it's not necessarily true that everyone has much to gain from modern VCSes.
svn is an extremely leaky abstraction, and just not a reliable enough tool to unleash on the people you're describing. Fortunately we're switching Real Soon Now(tm).
I suppose you can use subversion standalone? It's been too long since I used it. Anyway, with git just type "git init" and you are ready to go.
Not good devs, mind you, but you go to war with the army you have.
According to github.com/home:
> Join 224,000 coders with over 733,000 repositories
Also, in a recent blog post, they said they're clocking about 109k commits per day.
I'm not sure where beanstalk is there, but that's a few times larger than google code (which also bet on subversion).
IE6 works well for me by the way. And I play piano without black keys, it works well for me. Oh, and you know what, I always study the night before my exam, it works well for me.
At the beginning you're are not even conscious that you can, but once you've discovered the power it gives you, you will branch twice a day just because you can (and more if you need).
The two stage commit approach of git is interesting but not fundamental IMHO. "stash" is really cool.
The kind of features git gives me makes me use it even when I code alone.
So, if you don't use branches it is understandable why you are happy with SVN. If you want branches, you'll need Git something like it (HG).
That. (And this: http://news.ycombinator.com/item?id=1201559 )
Not begrudging the coders kudos for a solution to their problem. But studiously ignoring wider application seems a bit short-sighted.
http://www.reddit.com/r/programming/comments/biv72/why_git_a...
As a game developer, my repository is many gigabytes in size - consisting mostly of binary data. Perforce handles it like a champ; it scales incredibly well, even to the near-ridiculous volumes of data I need to build my projects.
And first hit on a quick search: It is well known that Google uses Perforce as its internal source management system (it has a source license).
So, obviously, it should be prescribed that everybody and his dog use a DVCS good at merging changes on text files, which solves the problem of the subset of people that:
1 - Hop around like rabbits, carrying their copy of the whole repository, and previously had to mail each other patches.
2 - Only work on text files, code with barely any non-text documentation, like top-dog kernel developers.
Good going.