I have multiple projects with multiple dependencies. Some of the projects share dependencies, so we have started using git versioning to allow us to update dependencies without breaking other projects.
I might have a structure like this:
Project A
|
---> Dep B version 1.0.0
Project C
|
---> Dep B version 2.0.0
Currently, we have our projects checked out in a single folder, then we use Zelda or NPM link to wire the dependencies into the correct node modules, so in my projects folder, I would have:
projects
| dep_b
| project_a
| project_c
Each folder is a git repo. Project A and C would look in their parent folder to find Dep B.
Up until we started using versioning, this worked just fine. However now, we have multiple versions of each dependency, and not all versions of the dependency are compatible with all the projects. I can't find an easy way to wire the correct checked-out version into the correct project.
Is there tooling that will help manage this?