3 ms·
(Author here.) I agree with your main point but wanted to respond to your PS. I think it's important to distinguish build tools like make from declarative vers
by dfabulich 9y ago
(Author here.) I agree with your main point but wanted to respond to your PS.
I think it's important to distinguish build tools like make from declarative versioned-dependency management tools, which multirepos require.
For example, you can build a multi-language monorepo with either make or CMake, but you can't declare that your repo builds "foo" version 1.2.3 and that it depends on "bar" version 2.3.4.
Maven does that, and it will automatically download the right version of bar for you and make it available, but Maven doesn't work well for C# dlls. You can use NuGet for dlls, but don't try it with JS modules. Use npm to manage JS modules, but don't try it with Perl packages. You can use CPAN for Perl packages, etc.
- erikb 9y agoAgreed. Make+Monorepo possible. Make+Multirepo maybe not enough.