Are there any reasons to use a package manager rather than git submodules/subtrees, or vice versa? The git solutions seem to be a lot more hassle than a simple package manager.
Assume that the space-saving benefit of git submodules is not important.
The git solutions seem to be a lot more hassle than a simple package manager.
This is not about hassle.
This is about two different ways to build a project:
pom.xml
or a npm-package.json
: just one more file within your unique codebase, which will instruct the compiler to download the relevant dependenciesThe first is good when building a system, where each part has its own release lifecycle, and you want to depend to pre-built dependencies.
The second is used when the dependencies are more tightly linked to the main program.
Or when there are no binary dependencies (which is the case, for instance, with Go and its modules).