Hacker News new | past | comments | ask | show | jobs | submit login

> These include the concept of changeset evolution coming to life and the announcement of both Facebook and Google choosing Mercurial over Git.

Perhaps this is true for Facebook. But I can say that Google most certainly does not use Hg over Git. The Go source code used to be under Hg, but they've recently migrated to git.




Creating a throwaway for this because I don't want to get anyone in trouble.

Today, right now, neither Facebook nor Google are fully centralized on Mercurial. Facebook uses a mixture of Subversion of Git, and Google uses a mixture of a system that is totally not Perforce why do you ask please do not look behind the curtain, and Git.

Moving forward, this statement will be true for both companies. In Facebook's case, they are narrowly focused on truly moving everything into Mercurial, and are heavily using Mercurial's extensibility to facilitate that. remotefilelog (https://bitbucket.org/facebook/remotefilelog) is a key part of this, but they've been doing lots of other stuff that's not public that I can't link to that lets them get further. This process is well underway, but (last I heard anything) is incomplete.

Google is going a different direction, because Google. They're aiming to extend out their not-Perforce system to speak scalable Mercurial protocols. Given that they have experience storing Mercurial and Git inside Subversion repositories on top of Bigtable, this actually strikes me as a relatively sane engineering decision, from their perspective. This project is not ready for use. Even when it is, public Google projects will continue living on GitHub, which means that Go will continue being Git for the foreseeable future (as will FOAM, Blaze, and anything else they want contributions on).


For smaller projects (up to the size of the Linux Kernal) it seems Git and Mercurial are pretty interchangeable so people go with Git and GitHub due to network effects.

Presumably this is all about replacing the massive Perforce repository for Google's production codebase using similar Mercurial scaling tricks as Facebook. https://code.facebook.com/posts/218678814984400/scaling-merc...


I think one of the largest reasons for Go moving to github is that most of their community already develops there. They cited that as a reason here: https://groups.google.com/forum/#!topic/golang-dev/sckirqOWe...

Also, just because they're using git for public projects doesn't rule out that they may be using mercurial internally. Google pays a number of people to work on mercurial... I'm not sure if that's the same for git.


I'm guessing it depends from project to project? There are several Google developers contributing to Mercurial.


If you look at development at Google, you'll see most people on a perforce derived repo system , then groups like Android, chrome, Etc on git, then basically very few teams using Mercurial.

We do have some hg contributors like augie, but we have way more git contributors, includes git project Lead Junio.




Join us for AI Startup School this June 16-17 in San Francisco!

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

Search: