Programming poll

Nov 30, 2010 01:15

Ok, so I'm trying to get our team moved off a "home grown" version control system that really sucks balls to something a little less buggy (ie. doesn't core dump if you have an apostrophe in a commit message) and a little faster (takes less than 5 minutes to check in a dozen files). And no, I'm not exaggerating. It really is that bad ( Read more... )

programming, things that suck, things that do not suck

Leave a comment

Comments 4

To elgecko... mr_z November 30 2010, 08:02:21 UTC
I left Visual Source Safe out of the list, mainly because I was certain it was banned by the Geneva Convention. ;-)

As for Subversion (which I currently actively use and even run a server for), I have to admit that Joel Spolsky is rather persuasive in talking me out of it.

Reply

Re: To elgecko... justben December 1 2010, 04:39:30 UTC
Spolsky tends to be hit or miss from my perspective, but on this one he basically hits the nail on the head. In fairness most of his points apply to other distributed vcs as well; I use hg over git (or others) mostly out of personal preference.

If you need further convincing, try doing this sometime in a centralized vcs. It gets ugly very quickly, and dvcs handles it remarkably cleanly. In my experience (3+ years using dvcs in professional software development environments, 9+ centralized) distributed is hands-down more powerful, more flexible, more manageable, and all around a better fit for professional software development.

EXCEPT (and this is an important one):

You have to get it. You have to get how distributed works and why. And so does the rest of your team. If the team doesn’t get it, they will screw it up. Code will get lost or mismerged or forgotten or never get pushed to a shared repository, and some recalcitrant teams will even blame the distributed model itself. The problem is that they’re trying to use a screw as if ( ... )

Reply

Re: To elgecko... mr_z December 1 2010, 05:17:05 UTC
I'm reading through the link you sent. This article looks like good ammo for pushing a DVCS. While it happens to be pushing Git, I don't see why Hg couldn't be used similarly. So, yeah, I am pretty convinced a DVCS is the way to go, and Hg vs. Git seems to be deciding which single malt scotch I like best, having ruled out iced tea, soda and Kool-Aid to drink. ;-)

The real challenge will be to integrate this with the beast that is our current VCS, a thing called "BDM". Here's a description of it I posted on Facebook:
Currently we're using a rather hackish system that's indescribably painful to use. We're doing this because the design team we work with has this particular system baked into all of their workflows. It has all sorts of wonderful quirks ( ... )

Reply


foxfirefey November 30 2010, 16:32:08 UTC
I don't know if git has anything similar, but Dreamwidth uses mercurial and so I've learned that to some extent, and I really love this one extension for it called "mercurial queues".

Reply


Leave a comment

Up