Visual studio 2010 第三方动态链接库
我有下面的目录。结构Visual studio 2010 第三方动态链接库,visual-studio-2010,visual-studio-2012,tfs,Visual Studio 2010,Visual Studio 2012,Tfs,我有下面的目录。结构 $/ TeamProj1/ Solution1/ <Solution and files etc> TeamProj2/ Libs/ LibSolution1/ <solution and files etc> External/ ThirdParty.dll $/ TeamProj1/ 解决方案1/ 团队项目2/ 自由基/ LibSolution1/
$/
TeamProj1/
Solution1/
<Solution and files etc>
TeamProj2/
Libs/
LibSolution1/
<solution and files etc>
External/
ThirdParty.dll
$/
TeamProj1/
解决方案1/
团队项目2/
自由基/
LibSolution1/
外部的/
第三方.dll
Solution1具有对LibSolution1的项目引用,以及对ThirdParty.dll的程序集引用
当我通过File->Open from source control重新签出Solution1时,TFS会正确签出LibSolution1文件,但不会签出第三方dll。
如果我手动签出第三方dll,所有内容都会生成
如何强制TFS签出正确的第三方dll文件?
我可以想出两种可能的方法,但我并不特别喜欢这两种方法。
1) 我可以在Solution1中添加一个libs文件夹并在那里添加dll。然后在签出solution1时将签出dll。但我不喜欢这种方法,因为除了Solution1之外,还有一些解决方案将使用第三方程序集,我只想维护文件的一个副本
2) 我可以创建一个“虚拟”第三方项目/解决方案,并将文件添加到该解决方案中,然后将虚拟项目添加到解决方案1解决方案中。然后,当我签出solution1时,它将看到虚拟项目,并将其与所有相关文件(即第三方DLL)一起签出。。。但这似乎不必要地复杂
是否有一种方法可以指示TFS简单地签出所需的文件?此解决方案是选项1的变体,但不必维护DLL的多个副本 将新文件夹添加到解决方案1(例如第三方DLL)。右键单击文件夹->添加现有项,而不是在此处实际添加DLL(从保存位置创建指向这些第三方DLL的链接)。现在,在文件夹中添加DLL链接后,从该文件夹(第三方DLL)添加对项目中DLL的引用 现在,当您获取最新的解决方案文件时,它也应该获取您的DLL。我自己并没有在Dll中尝试过这个方法,但在维护AssemblyVersion文件的一个副本时做过,效果很好。试着让我知道
退房时,您的意思是“获取最新信息”,对吗?或者thirdparty.dll需要是可写的吗?你能不能不只是打开源代码控制资源管理器,而是在那里做一个“获取最新版本”的操作?有关在解决方案资源管理器中不起作用的原因,请参阅,@rene:Third party.dll不需要是可写的“获取最新版本”也很有可能奏效。@爱德华:我可以打开源代码管理资源管理器并手动获取文件的最新版本,但是,我希望在通过“源代码管理打开”新打开时自动获取文件。我不想做任何其他事情。