我有以下问题。结构
$/
TeamProj1/
Solution1/
<Solution and files etc>
TeamProj2/
Libs/
LibSolution1/
<solution and files etc>
External/
ThirdParty.dllSolution1有一个对LibSolution1的项目引用,还有一个对ThirdParty.dll的程序集引用。
当我通过文件->重新签出Solution1时,TFS正确地签出了LibSolution1文件,但没有检出第三方dll。如果我手动签出第三方dll,一切都会生成。
如何强制TFS签出正确的第三方dll文件?我可以想到两种可能的方法,但也不特别喜欢。1)我可以向Solution1中添加一个libs文件夹,并在那里添加dll。然后,当solution1签出时,dll将被签出。不过,我不喜欢这种方法,因为除了Solution1之外,还有一些解决方案将使用第三方程序集,而且我只想维护文件的一个副本。
2)我可以创建一个“虚拟”ThirdParty项目/解决方案,并将文件添加到该解决方案中,然后将虚拟项目添加到solution1解决方案中。然后,当我签出solution1时,它会看到虚拟项目并与所有相关文件(第三方all )一起检查它.但这似乎是不必要的复杂。
难道没有方法可以指示TFS简单地签出所需的文件吗?
发布于 2013-08-27 14:14:09
这里的解决方案是选项1的一个变体,但不必维护DLL的多个副本。
向Solution1中添加一个新文件夹(例如Third_Party_DLL)。右CLick文件夹->添加现有项目,而不是在这里物理地添加DLL(从保存它的位置创建到这些第三方DLL的链接)。现在,在文件夹中添加DLL链接后,从该文件夹(Third_party_Dll)中添加对项目中DLL的引用。
现在,当您获得最新的解决方案文件,它也应该得到您的DLL。我自己还没有为Dll尝试过这种方法,但是为了维护AssemblyVersion文件的一个副本,我已经这样做了,而且效果很好。试着让我知道。
添加Vs添加链接
https://stackoverflow.com/questions/18448509
复制相似问题