Earlier quoted context omitted.
Why split it into separate modules? Seeing that big companies are very successful with monorepos (Google, Facebook, Microsoft), has made me reconsider if repository modularization is actually worth it. There are a host of advantages to not modularizing repos, and I'm beginning to believe they outweigh those of modular repos.
mono repo only works if you have tooling. google's and facebook's tools are not opensource. also, ms tooling is windows only. so for most of us the only reasonable path is to split into multiple repositories. it is also easier to create tools that deal with many repositories. than it is to create a tool that virtualizes a single large repo.
The largest Git repo
161–170 of 416 posts
Re: The largest Git repo
#162What'd be even more interesting to see is something like the 95th or 99th percentile, as showing that 80% of all operations finish in acceptable time is nice, but probably not what's necessary to have satisfied customers.
Re: The largest Git repo
#163Coming from the days of CVS and SVN, git was a freaking miracle in terms of performance, so I have to just put things into perspective here when the topmost issue of git is performance . It's just a testament how huge are the codebases we're dealing with (Windows over there, but also Android, and surely countless others), the staggering amount of code we're wrangling around these days and the level of collaboration i…
I agree. I really think Linux needs a Nobel Price
Re: The largest Git repo
#164Earlier quoted context omitted.
If they didn't use MFC, WinForms and WPF what exactly were they using? Flash?
Win32
Re: The largest Git repo
#165Earlier quoted context omitted.
pros to big repo: -dont have to spend time to think about defining interfaces cons: -history is full of crap you dont care about -tests take forever to run -tooling breaks down completely, though thanks to MS the limit was increased seriously
-dont have to spend time to think about defining interfaces That seems like a design and policy choice, orthogonal to repos.
If they are in different repos, the change is not atomic and you need to version interfaces or keep backwards compatibility in some other way.
Re: The largest Git repo
#166Earlier quoted context omitted.
Wait so like, at google, Inbox and Android are in the same repo as ChromeOS and oh I dunno, Google Search? That doesn't make any sense at all...
It makes total sense when the expectation is that any engineer in the company can build any part of the stack at any time with a minimum of drama.
Re: The largest Git repo
#167Windows, because of the size of the team and the nature of the work, often has VERY large merges across branches (10,000’s of changes with 1,000’s of conflicts). At a former startup, our product was built on Chromium. As the build/release engineer, one of my daily responsibilities was merging Chromium's changes with ours. Just performing the merge and conflict resolution was anywhere from 5 minutes to an hour of my t…
If you use git-mediate[1], you can re-apply those massive changes on the conflicted state, run git-mediate - and the conflicts get resolved.
For example: if you have 300 conflicts due to some massive rename, you can type in:
git-search-replace.py[2] -f oldGlobalName///newGlobalName
git-mediate -d
Succcessfully resolved 377 conflicts and failed resolving 1 conflict.
[1] https://medium.com/@yairchu/how-git-mediate-made-me-stop-fea...Re: The largest Git repo
#168I have tremendous respect for Microsoft pulling itself together over the past few years.
Now that it is somewhat proven, maybe Google will leverage GVFS on Windows and create a FUSE solution for Linux.
Re: The largest Git repo
#169Earlier quoted context omitted.
Indeed, while 19 seconds for commit is far better than 30 minutes we would have seen without GVFS, it's way too slow to actually feel responsive while you're coding. And in fact, it was sometimes worse than 19 seconds because commands like status and add would generally get slower as you access and hydrate more files in the repo. With the big O(modified) update that we just made to GVFS, git commands no longer slow d…
You have to put this into perspective with what they are replacing. You'd never get a submit done in less than 19 seconds using the old source depot tools anyways. When you work on projects this big that takes hours to compile and minutes to incremental compile - responsiveness just isn't something you get to have at scale.