1

我有以下目录。结构

$/
 TeamProj1/
     Solution1/
         <Solution and files etc>
  TeamProj2/
     Libs/
       LibSolution1/
         <solution and files etc>
     External/
      ThirdParty.dll

Solution1 有一个对 LibSolution1 的项目引用,并且有一个对 ThirdParty.dll 的程序集引用。

当我通过 File->Open 从源代码控制 TFS 重新检出解决方案 1 时,正确检出 LibSolution1 文件,但没有检出第三方 dll。如果我手动检查第三方 dll,一切都会构建。

如何强制 TFS 检出正确的第三方 dll 文件?我可以想到两种可能的方法,但都不是特别喜欢。1) 我可以将 libs 文件夹添加到 Solution1 并在那里添加 dll。然后在检出solution1 时将检出dll。我不喜欢这种方法,因为除了 Solution1 之外还有其他解决方案将使用第三方程序集,并且我只想维护文件的一个副本。

2)我可以创建一个“虚拟”第三方项目/解决方案并将文件添加到该解决方案,然后将虚拟项目添加到解决方案 1 解决方案。然后,当我检查解决方案 1 时,它会看到虚拟项目并将其与所有相关文件(作为第三方 dll)一起检查......但这似乎不必要地复杂。

有没有办法可以指示 TFS 简单地检查所需的文件?

4

1 回答 1

2

此解决方案是您的选项 1 的变体,但无需维护 DLL 的多个副本。

将一个新文件夹添加到您的解决方案 1(例如 Third_Party_DLL)。右键单击文件夹 -> 添加现有项目,而不是在此处物理添加 DLL(从保​​存它的位置创建指向这些第三方 DLL 的链接)。现在,在文件夹中添加 DLL 链接后,从该文件夹 (Third_party_Dll) 添加对项目中 DLL 的引用。

现在,当您获得最新的解决方案文件时,它也应该获得您的 DLL。我自己还没有为 Dll 尝试过这个,但是为了维护一个 AssemblyVersion 文件的副本,我已经这样做了,而且效果很好。试着让我知道。

添加与添加链接

于 2013-08-27T14:14:09.630 回答