我们正在尝试整理一些处理依赖项的约定,并将代码签入到svn中。以前的方法基本上都是免费的,这意味着项目无法检出并且没有引用(大多数项目都是C#)。Visual Studio 2008中的自动版本化DLL
我们一次只修复这一步,现在正在将二进制文件检入单独的svn存储库。版本通过它们对应的svn版本号进行区分,因此您可能有类似svnrelease/libraryA/r1000/libraryA.dll
的路径。有一件事情是这样的:库A依赖于库B,项目P依赖于库A,但也直接引用库B.如果库A引用B的版本1000,但是项目P的直接引用是修订版2000?
我建议在将它们签入发行版svn repo时在DLL文件名中包含修订号,以便多个版本可以共存。一位同事建议VS2k8可以自动处理这个问题。因此,如果在库A项目中,将其设置为版本1.8,VS将输出命名为“libraryA_1_8.dll”,并且在项目P中,可以引用“$(release)\ libraryA \ $(version)”它可以解决。我找不到任何有关如何操作的信息。这可能吗?如果不是,我的方法是将版本名称包含在DLL二进制文件中是否合理?我知道这个场景暗示重构代码可能是必要的,但是我们正在寻找一个短期解决方案,因为我们对这些东西进行了排序。使用GAC也是可能的,但是现在我们想要坚持分发每个应用程序的DLL。)