5 ms·
I can't say for sure, but I'd be incredibly surprised if they weren't. What else would they be on? (Don't say Git, they tried to make Git scale for their monore
by sulam 6y ago
I can't say for sure, but I'd be incredibly surprised if they weren't. What else would they be on? (Don't say Git, they tried to make Git scale for their monorepo and it would have required a lot of changes that the Git community wasn't interested in.)
- adamnemecek 6y agoPerforce is still popular.
- klodolph 6y agoI think FB and Google both surpassed Perforce's scale a long time ago. I've heard all these stories about build servers or source control servers where, for the longest time, the solution to scalability problems was to throw larger machines at it. At some point the machines have well into the TBs of RAM, each, and it becomes a major priority to make the system distributed.
- adamnemecek 6y agoPerforce scales the best of the bunch.
- klodolph 6y agoIt doesn't matter if you're the best if you're not good enough. That's why neither Google nor Facebook use Perforce for most of their code. The repos are just too large.
- jeffbee 6y agoTrue, but the terminal scale of Perforce at Google was very impressive, and shows that it can handle pretty much anything that 99.9% of companies would need.
- klodolph 6y agoSure, but Facebook is absolutely in that 0.1%.
- adamnemecek 6y agoWhat makes you say it's not?
- klodolph 6y agoPersonal conversations with people who used to run Perforce at Google.
- Sesse__ 6y agoBack when Google was still at Perforce, I used to go to perforce.com to read about how your engineers would never ever wait for Perforce, while waiting for Perforce. The Perforce servers were… large. And backed by large, extremely expensive SANs that worked with RAM as backing store. Yet, it was slow as molasses at Google's scale.
- jeffbee 6y agoPerforce at Google scale in 2010 was "slow" in that it was orders of magnitude faster than git is on much smaller repos today. The only thing that git is really faster for is branching, which is something I almost never wanted to do with Perforce anyway. Git feels fast because it either front-loads all the pain (with checkouts) or defers it (with unexpected runs of git gc) but it doesn't really scale. That's why git users are so vocally opposed to monorepos.
- juped 6y agoAs a committed monorepo opponent, that's not why. "Why" is that it's not possible for a monorepo to have meaningful history. If you don't want to have meaningful history, you're crippling yourself, but you also shouldn't use Git; there are better tools for version control with bad history.
- jeffbee 6y agoAh so I guess it's "not possible" that Google has a meaningful history of their source code and I guess their project, arguably among largest and most profitable of all time, is "crippled". Weird. I wonder how they get anything done over there.
- yodon 6y agoMicrosoft uses git for all its Windows development, which is a pretty big scale (the repo was 300GB back in 2017)
- sulam 6y agoYep, and they've had to add support for several features that Facebook added to Mercurial years earlier.
- klodolph 6y agoFrom what I understand, Microsoft "took Git and ran with it" the same way that Facebook did with Mercurial, or that Google did with Perforce. The command-line front-end tools are recognizably Git, but the underlying system is radically different.
- jeffbee 6y agoGoogle's main repo was 86TB in January 2015.
- ian-g 6y agoIs this 86TB of files at that time? Or 86TB of files cumulatively over time + metadata?
- est31 6y ago> it would have required a lot of changes that the Git community wasn't interested in Can you expand on this? I've thought partial checkouts are accepted and the user facing part even has been released with 1.7?
- sulam 6y agoThis goes back to 10 years ago now. It’s nice to see some improvement, but 10 years ago there was very little interest in these sorts of problems. The literal response to FB performance tests was “you’re doing it wrong, don’t use a monorepo.” It shouldn’t be a surprise that FB decided to go elsewhere.
- est31 6y agoFair point, years ago the situation was different. Nowadays really large scale git repos like Windows exist, and work by Jonathan Tan and others has made git more compatible with monorepos.