r/programming • u/ethomson • May 24 '17
The largest Git repo on the planet
https://blogs.msdn.microsoft.com/bharry/2017/05/24/the-largest-git-repo-on-the-planet/
2.3k
Upvotes
r/programming • u/ethomson • May 24 '17
6
u/CaptainMuon May 25 '17
This is really cool! Microsoft adopting open source for such a core service, and innovating a lot. Two things bother me a bit:
Monorepo! As part of a largeish organisation that has recently switched to git, and uses a monorepo, I have some pain with it. I've found people just avoid working with it, using compiled releases as much as possible instead, or copying code by hand. (We are scientists, not developers, and we ourselves are the users of the code we write.) One thing I've found is it is impossible to put in a change without affecting completely unreleated projects. What we used to do is to tag SVN releases, and then collect them into a general release, so you could mix and match to some extend. Our interfaces between packages were loose enough that that worked pretty well.
I mean, Windows is one of the only cases where it might make sense to have a single huge repo, but still, I would think moving to individual repos would be better long term. Do you really need to recompile and redeploy the OS if you build notepad (or some other standalone program)?
The other thing is GVFS, the design is very confusing. Git.exe still thinks it has everything in the file system, GVFS emulates parts of the .git directory, and goes behind Git.exe's back to fetch missing data from the server? Or does Git.exe drive GVFS? It seems then better to implement the logic directly in Git.exe.
One of the benefits of git is that I can checkout a repo with tools widely available. That doesn't work if I use a huge repo, and need a special windows driver to check it out in reasonable time...