如何处理TFS中的DLL引用?

时间:2016-09-23 18:05:16

标签: c# tfs

我创建了我的第一个TFS(2013 Express)项目,并将我的解决方案(MVC5)添加到该项目中。

然后我检查了所有内容并将其删除并从TFS恢复,以确保我有一个工作副本。

就在这时,我意识到我有一个“DLL Reference”文件夹,它位于我的解决方案之外。

在TFS中存储这样的第三方dll的正确方法是什么,这样我才能确保我有一个可行的解决方案?

编辑:
这不是来自Nuget的dll。这些是我从文件夹引用的第三方dll。

4 个答案:

答案 0 :(得分:4)

在解决方案级别的TFS中创建一个文件夹,将其称为依赖项,二进制文件或提供您喜欢的任何名称。将第三方文件添加到此文件夹。从此文件夹中删除并添加对项目的引用。

答案 1 :(得分:1)

简单但不那么干净的方法是创建一个虚拟项目,没有源文件和单个文件夹(您可以使用已有的程序集文件夹)包含您的依赖项。然后,您可以将虚拟项目添加到解决方案中,它将由TFS同步。

有一种替代解决方案,不包括虚拟项目。

在Visual Studio中,您可以使用Source Control Explorer将文件添加到TFS,即使它们不在您的解决方案的项目中。

您也可以从Windows资源管理器中执行此操作。只要您位于已配置工作区的文件夹中,右键单击该文件夹时就应该能够看到“Team Foundation Server”下拉菜单。

缺点是,当有人需要将您的解决方案文件下载到新计算机时,他们也必须手动下载该文件夹(通过Source Control Explorer或Windows资源管理器)。

答案 2 :(得分:0)

我知道我来晚了一些,但是对于遇到类似问题的任何人,您都可以在项目中创建一个名为“ ExternalDLLs”的文件夹,并在其中添加所需的DLL。在您的项目中添加对这些DLL的引用。然后将此文件夹包含在源代码管理中并向上推。

默认情况下,源代码管理忽略具有某些扩展名的文件(例如dll)。确保将此文件夹添加到源代码管理中,通常可以从IDE中进行操作,或者可能有一个.gitignore文件(或类似文件)

如果您尝试将带有DLL的bin文件夹推送至源代码管理,则bin文件夹的内容将变为只读。因此,需要创建此单独的文件夹。

答案 3 :(得分:0)

我始终建议不要将二进制文件提交到源代码管理。维护这些依赖关系的一种方法是创建自己的nuget包,并将其内部托管在自己的nuget服务器上。