复制本地的DLL引用失败,因为TFS使所有DLL只读

时间:2010-12-08 08:25:56

标签: visual-studio tfs projects-and-solutions

我刚刚将几个引用的DLL从项目的bin文件夹中移出到共享项目中的特殊Libraries文件夹中。现在我得到了几个构建错误,因为VS正在尝试将DLL从新位置复制到bin文件夹。

我可以通过使构建文件夹中的DLL读写而不是默认的TFS只读来轻松解决这个问题,但是如果我再次检查整个解决方案,我该如何防止问题再次出现?

1 个答案:

答案 0 :(得分:1)

上面的评论是准确的 - 通常没有理由检查二进制文件(至少不在开发分支中)。可能有正当理由(例如,您的二进制文件需要根据生产中的内容进行审核)。如果他们不需要在那里,让TFS管理员对项目进行TF DESTROY,那么请注意不要再次检查它们。

话虽如此,如果你确实需要继续这样做,你将不得不做几件事。

首先,您需要在源文件中“签出”bin文件夹。这将使所有二进制文件都可写。

但是,如果这样做,默认情况下,TFS会对所有二进制文件进行独占锁定。为了防止这种情况发生,您需要告诉TFS使这些文件可以合并。您需要成为TFS的管理员,或让管理员执行以下步骤。

在Visual Studio 2010中:

  • 连接到TFS
  • 团队菜单下,选择团队项目收藏设置
  • 在此菜单下,选择源代码管理文件类型。这将打开一个对话框。
  • 在对话框中找到列表中的可执行文件,然后点击修改
  • 在下一个对话框中,选中启用文件合并和多次检出
  • 单击“确定”关闭此对话框,然后单击“确定”关闭文件类型对话框。

现在,多个用户可以一次查看可执行文件。