好的,我们有一个相当大的解决方案,其中包含大约8个不同的项目。这些项目都依赖于各种不同的第三方程序集。此解决方案位于源代码控制的主干分支中。我们还有大约5个与主干分支相关的不同分支。
如何管理这些第三方程序集才是最好的方法?当您添加对程序集的引用并单击它以查看属性窗口时,我注意到它对该程序集有硬编码的路径。
例如:我们所有的分支都映射到 "C:\Code\"。所以主干就是 "C:\Code\Trunk",而分支就是 "C:\Code\somebranch"。
如果我在 "C:\Code\Trunk" 中创建一个名为 "Assemblies" 的文件夹,然后将所有第三方程序集放入该文件夹中,然后再添加对其中某个程序集的引用,那么该程序集的引用是否是相对的?如果我单击已添加的程序集,我会看到灰色的路径属性显示为 "C:\Code\Trunk\Assemblies\someassembly.dll"。
如果我从主干分支分支出去,会发生什么情况?"somebranch" 是否仍将引用 "C:\Code\Trunk\Assemblies\someassembly.dll",还是它会引用 "C:\Code\somebranch\Assemblies\someassembly.dll"?
目前,我们实际上在源代码控制中有一个名为 "Assemblies" 的分支,它与任何其他分支一样被映射到 "C:\Code\"。因此,所有带有引用程序集的项目所在的分支都引用 "C:\Code\Assemblies\someassembly.dll",无论该项目在哪个分支中,路径都是相同的。
不幸的是,这意味着您必须获取您正在工作的分支的最新版本和程序集分支的最新版本,才能成功构建解决方案。
总而言之: - 如何添加相对于解决方案的引用?(例如,添加对 C:\Code\Trunk\Assemblies\someassembly.dll 的引用,并使其路径相对于添加它的项目,以便在创建分支时引用分支的程序集文件夹而不是主干的程序集文件夹。或者该引用已经是相对的了吗? - 其他推荐管理第三方程序集的策略有哪些?
如何管理这些第三方程序集才是最好的方法?当您添加对程序集的引用并单击它以查看属性窗口时,我注意到它对该程序集有硬编码的路径。
例如:我们所有的分支都映射到 "C:\Code\"。所以主干就是 "C:\Code\Trunk",而分支就是 "C:\Code\somebranch"。
如果我在 "C:\Code\Trunk" 中创建一个名为 "Assemblies" 的文件夹,然后将所有第三方程序集放入该文件夹中,然后再添加对其中某个程序集的引用,那么该程序集的引用是否是相对的?如果我单击已添加的程序集,我会看到灰色的路径属性显示为 "C:\Code\Trunk\Assemblies\someassembly.dll"。
如果我从主干分支分支出去,会发生什么情况?"somebranch" 是否仍将引用 "C:\Code\Trunk\Assemblies\someassembly.dll",还是它会引用 "C:\Code\somebranch\Assemblies\someassembly.dll"?
目前,我们实际上在源代码控制中有一个名为 "Assemblies" 的分支,它与任何其他分支一样被映射到 "C:\Code\"。因此,所有带有引用程序集的项目所在的分支都引用 "C:\Code\Assemblies\someassembly.dll",无论该项目在哪个分支中,路径都是相同的。
不幸的是,这意味着您必须获取您正在工作的分支的最新版本和程序集分支的最新版本,才能成功构建解决方案。
总而言之: - 如何添加相对于解决方案的引用?(例如,添加对 C:\Code\Trunk\Assemblies\someassembly.dll 的引用,并使其路径相对于添加它的项目,以便在创建分支时引用分支的程序集文件夹而不是主干的程序集文件夹。或者该引用已经是相对的了吗? - 其他推荐管理第三方程序集的策略有哪些?