Refix is an attempt to address the issues of dependency management in .NET projects. It uses a combination of two things to do this: a repository of binary depedencies, including metadata that identifies alternative versions of components that can be viewed
as compatible; and rewriting of files to correct dependency versioning (specifically, project files and configuration files).
Demonstration: version resolution
At present, Refix exists as a command line tool, and only uses a local repository of binary files. It only works with C# project files. Online help is available for the tool, which you can access by typing
at the command line. There are two things you will probably want to do before doing this: edit the configuration file to point to the folder in which you want your local repository to be stored, and add the path to
file to your
Essentially, the following sequence of commands will sort out the dependencies in a project (if possible), and (re)write the necessary files - after this, the solution should build against a single unified set of binaries that are in a
folder under the solution root:
The changes can be reverted by typing rfx clean -a
. PLEASE NOTE THIS IS VERY EARLY PRE-RELEASE SOFTWARE, AND YOU USE IT AT YOUR OWN RISK.
There are no prerequisites for building Refix beyond Visual Studio 2008 or higher. You should be able to open the solution file and build it first time. To use the proper project build file, you should install Ruby and Rake. The albacore library for Rake is
included in the source.