I know it‘s an April‘s fool. But I don’t get this recent trend of people arguing in favor of a monorepo (at my work place, too). It’s a nightmare to handle and use. What gives?
> It’s a nightmare to handle and use Quite the opposite, IMHO. Juggling dozens of PRs across many repos for a simple change is the definition of a nightmare.
Debian Git Monorepo
121–130 of 157 posts
Re: Debian Git Monorepo
#122Re: Debian Git Monorepo
#123Earlier quoted context omitted.
If the same problem doesn't exist in a monorepo in a different form then your project is not large enough to be in this discussion in the first place.
It's actually just trade offs that we should be able to have professional discussions about, otherwise your advocating for "always use a monorepo" unless your library is for public consumption. The reality is, at some point, having repos that are hundreds of GB with hundreds of active PRs also has its own downsides that requires tooling and workflows to combat. Meanwhile, splitting it all up introduces integration pr…
Re: Debian Git Monorepo
#124Re: Debian Git Monorepo
#125Re: Debian Git Monorepo
#126Earlier quoted context omitted.
> 2024-04-01 07:41 Seems to have been posted the 1st of April.
Post this to HN…
Seems it was also submitted 1st of April: https://news.ycombinator.com/from?site=liw.fi
I guess someone else posted it again, and the spam-filter ignored the previous entry as it didn't get any traction then.
Re: Debian Git Monorepo
#127https://blog.williammanley.net/2020/05/25/unlock-software-fr...
Re: Debian Git Monorepo
#128Earlier quoted context omitted.
Github / Gitlab would work great and reduce friction for kernel contribution. The refusal to switch or provide the alternate path is mostly inertia.
Github and gitlab are both deeply, fundamentally, flawed because the unit of contribution is the branch rather than the commit. Other than the UI not being very good, the code review experience is fundamentally hampered unless you enable squashing but that's a bit shit for different reasons. On a purely UX level too the velocity of getting patches in is terrible. They're designed for ad-hoc open source contribution,…
That's git main insight, branching is everywhere, so it is designed with branching and merging as fundamental, explicit, and regular operations. Seeing how successful git is, it looks like it was a good choice.
GitHub and GitLab are built on top of git, and follow its principles, so that making the branch the unit of contribution is simply natural.
Of course, you can make single commit branches, in fact, that's what squashing is for. There is, of course, no obligation to wait before you have your change merged before you start working again, you can start from an earlier version and rebase later, merge back some changes, or do whatever you want really. You can tight-loop as much as you want, especially on your local machine.
Re: Debian Git Monorepo
#129Earlier quoted context omitted.
Github and gitlab are both deeply, fundamentally, flawed because the unit of contribution is the branch rather than the commit. Other than the UI not being very good, the code review experience is fundamentally hampered unless you enable squashing but that's a bit shit for different reasons. On a purely UX level too the velocity of getting patches in is terrible. They're designed for ad-hoc open source contribution,…
A unit of contribution is always a branch, implicitly or explicitly. What you have in your local repository is a branch of what is in the central repository, which is a branch of what you have in your filesystem, which is a branch of what you have open in your editor. In the same way a contribution is always a merge, saving a file is merging the content of your editor in your filesystem, committing is merging your fi…
It's the same ingredients but it's very hamfisted.
Squashing is like training wheels.
What I was hinting at with the loop concept is that it should be closer to phabricator that gitlab, let me stack.
Re: Debian Git Monorepo
#130Putting aside that this is an April Fool's joke, I like the last part: > This time, I’m cruel to Git: can it handle a repository of this size? In 2009 it could not. In 2024 it can. That really hits home for me. Really: Think about this repo for a moment. 500 GB. 15 miiiiiiiiiiiiiiilion files. It is crazy to think that a "vanilla" git repo can handle it. Applause for the Git team!
we wrote our own in memory client but even before that, stock git client would always finish, it was just a matter of how long you were willing to wait. maybe we were lucky overall