We have a few projects in my organization that are being developed in parallel and I have found that they are increasingly using similar Utility/Logging/Etc functionalities that they have as separate projects. Having heard about Git Submodules in the past, I figured that this would be the perfect time to set this up. This is when I ran into problems.
Projects that I would like to extract as re-usable sub-modules:
- Utility (collection of helper classes, utilities, etc)
- Log (log4net wrapper with extra functionality)
- Possibly others
The biggest problem experienced is Nuget packages not resolving. They resolve in sub-modules individually, but not when they are used inside other projects. The second problem is confusion around how to reference those sub-module projects in the main project - currently I have added them in as an existing project, pointing into the SubModuleSolutionFolder/ProjectFolder, which seems... dirty :/
I have tried looking around for some examples/tutorials/articles that describe the correct usage of sub-modules in Visual Studio projects, but was unable to find anything decent. The only other thing that I have found is a few replies recommendations to use Nuget/Nuget-like tools to set up packages for those projects to use in other solutions, but this seems like an overkill to me for a few simple libraries. Is it worth doing?
Any pointers/links/best practices would be highly appreciated!