Question

We have a framework created in .NET which controls hardware devices. The entire framework uses MEF so it relies heavily on interfaces.

For reasons beyond our control we had to change the hardware and that required some breaking changes to some of the interfaces.

The project for the old hardware was put on hold for a while and we started working on a graphical application which uses the new version of the framework.

Now, much later, they want us to support the old hardware again, so we're thinking of backporting the existing graphical application to use the old framework and maintain two versions.

The framework is one Visual Studio solution with multiple projects, and the graphical application is another Visual Studio solution with a few projects.

Some parts (projects in the framework solution) did not rely on changed interfaces, others did.

For source control we have a subversion repository.

Has anybody had any experience with managing something like this? Are there any best practices? Suggestions?

Was it helpful?

Solution

This is a prime canditate to create a branch. Have a main repository with the trunk of the code, and a branch for each different set of hardware that you need. This will make it easy for you to code things that will need to be done for both versions of the codebase, while keeping their intricacies independent.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top