如何强制TFS让我下载一个文件夹(列出的方法除外)?

时间:2012-07-18 16:43:42

标签: visual-studio-2010 tfs

我有一个看似常见的问题,但找不到适合我的常用解决方案。我最近对我的计算机进行了重新映像,现在正在从TFS重新下载解决方案。其中一个解决方案文件夹包含2个文件夹,列出源控件资源管理器的“最新”列中的“未下载”。当试图打开解决方案时,我收到错误“无法加载项目文件。无法找到文件x”。我尝试过下面列出的方法,但无济于事:

  1. 获取特定版本,检查覆盖选项
  2. 删除,.suo文件,重启VS2010
  3. tf get / force
  4. 删除映射,删除本地文件,将整个TFS项目重新映射到本地文件夹
  5. tfpt回滚/更改集.csproj的最后一个变更集列出了一个分支,合并为挂起的更改由我
  6. 文件 - >源控制 - >从源代码管理打开,导航到TFS项目,尝试在未下载的文件夹中打开.csproj,收到错误“无法打开所选文件。项目文件已被移动,重命名或不在您的计算机上。”
  7. 我可能会遗漏我尝试的其他事情,如果我能想到任何事情,我一定会更新此列表。

    除了上面列出的那些,还有其他方法可以从TFS中获取这两个文件夹及其内容吗?

3 个答案:

答案 0 :(得分:6)

尝试通过visual studio命令行浏览到目录并执行:

tf get . /force /recursive

这应该从当前目录强制递归。

答案 1 :(得分:0)

你已经尝试了我建议的大部分事情。如果TFS的一个简单案例与您PC上的内容混淆,那么强制获取最新应该有效。

tfs或解决方案资源管理器中的“文件夹”?解决方案资源管理器中的文件夹通常镜像真实的磁盘结构,但可以在SE中的不同位置获取文件和文件夹,而不是在磁盘上。此coild表示解决方案资源管理器引用的文件未映射到您的tfs工作区。

我会检查工作区映射是否尽可能简单(没有分支或额外不需要的文件夹等),关闭解决方案,从源代码管理视图强制获取最新版本的磁盘结构,然后加载.csproj文件编辑器中的文件,以确切检查项目引用的内容,以确保所有文件都存在并位于磁盘上合理的位置。

答案 2 :(得分:0)

我发现了问题。我最近向TFSProject / Readers TFS组添加了某个域组,然后明确拒绝访问这两个文件夹中的所有权限。似乎虽然我在贡献者TFS小组中,但我也是“读者”,所以我拒绝访问自己。