Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Ask HN: Companies and source control
7 points by jchonphoenix on Oct 26, 2010 | hide | past | favorite | 4 comments
So recently, I've been checking out a lot of companies, speaking with their engineering teams and interviewing. The general stuff a CS senior would do.

As far as the older companies go, they use a wide array of revision control software.

Most of the newer startups I've spoken to use Mercurial though. Anybody know why? It seems like git is the more popular public choice, and I've heard engineers say "we use hg here, but if I had a choice, I'd use git." Why then are most startups using Mercurial?



I used mercurial for a couple of years before switching to git - mostly I didn't like git's complexity or ease of shooting yourself in the foot. I'd suspect these startups have a similar line of reasoning.

The mercurial CLI is well thought out and easy to use vs git's incredible number of commands and command line options, and is also similar to SVN which probably helps get people up to speed. Generally with hg there's one right way to do things, but many with git.

As far as shooting yourself in the foot goes, git's ability to rewrite history is great for maintaining a clean revision history even after commits are made. Rebasing is quite handy for keeping multiple branches up to date and easy to merge. But these are power tools that can result a lot of pain if they aren't used properly.

I switched to git because the extra power and flexibility was more than worth the cost, and git's branching model ends up working much better for me, but mercurial is a very nice tool!


I was going to mention TortoiseHG as a possible reason, I've found running git on windows painful, but then I found TortoiseGit just now.

Personally I prefer Git, it's what we use here, but we don't really have a hard and fast rule - I think we have some subversion-based code trees knocking around too.


It feels like if a shop is starting from scratch, they're more likely to go with Mercurial - I'm betting the Python connection is a big reason for that, along with its comparative user-friendliness - while a shop that's migrating off SVN tends to go to git.


It seems like python people tend to go hg over git maybe the startups in question are python shops?




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: