Fixing problems
Having identified the problem, we can explore options available to fix it.
This is a list of potential problems you might see.
Drilling into the page for that problem, you’ll get a list of potential solutions.
(If you’re following along with the git-sizer
example from the previous page, try “Checkouts are too big” below.)
Note: For most of these problems, another possible solution is “split up the monorepo”. We’ll assume that’s not on the table, since you’re looking into improving monorepo performance 😀
- Clones are too slow
- Fetches are too slow
- Pushes are too slow
- Checkouts are too big or slow
- Local Git commands are slow
- Losing the race to update
- Server maintenance fails or takes too long
- Server CPU usage is high
If you aren’t sure which of these is your problem, try using the tools and methods mentioned elsewhere. After you’ve resolved any detected problems, take a wider view of your workflows to make sure they’re compatible with monorepos. Also, be sure to check out the additional resources we’ve linked to.