This essentially amounts to, "how do I clone a .NET project, make modifications, and use it rather than the published one?"
In NodeJS, we have npm link
, which lets you link a local package (module) in your node_modules/ directory, to your current project. So for example, instead of using Express in your package.json, you can
- Clone Express
- Make modifications to express
- Compile (transpile, if necessary) and/or build
- Run
npm link
in Express repo to create a globally available local package - Run
npm link express
in your current project to use your local express, rather that the one you would get if younpm install
it.
With .NET, the closest solution I have seen so far includes creating a local feed, but in my experimentation this doesn't seem to work. Other questions on stack overflow like how to use local packages in .net seem to offer solutions using RestoreSources, which is virtually undocumented across the entire web. When attempting to change RestoreSources to use a LocalPackages directory, it is not clear to me the local packages are being used or not (source in obj/ directory still seems to come from nuget package rather than local).