TFS,无法签入解决方案,accordionlist.gif:进程无法访问该文件,因为它正被另一个进程使用

mon*_*tro 7 tfs visual-studio-2013

我必须在Visual Studio 2013中将我的解决方案添加到TFS,当我单击Team Explorer窗口中的Check-In按钮时,我收到以下错误消息:

C:\ Projects\2013\MyCompany.MySolution\MyProject\adminpages\images\someimage.gif:进程无法访问该文件,因为它正被另一个进程使用

显然我使用Process Explorer和LockHunter检查了这个文件是否被另一个进程使用,但没有找到任何内容.我很好奇为什么这些文件,他们没有在任何地方使用.

知道它可能是什么?因为这个愚蠢的错误,我无法签入TFS的解决方案.

谢谢.

d3r*_*3kk -1

有时,VS 可能会根据在您的解决方案/项目中看到的内容不同意您正在检查的内容。当我创建一个新项目并在 Visual Studio 下移动文件时(即不使用 VS 内部的界面),我时常会看到这种情况。

以下是我纠正该问题的方法:

保存您的项目并关闭 Visual Studio 2013。打开“VS2013 的开发人员命令提示符”并 cd 到包含您的解决方案的文件夹。发出以下命令:

tf add /recursive .
tf checkin /recursive .
Run Code Online (Sandbox Code Playgroud)

然后,将原始源复制到其他地方:

robocopy /MIR . C:\Temp\Original
Run Code Online (Sandbox Code Playgroud)

然后,删除当前源并从 TFS 重新获取

cd ..\
rmdir /s /q <foldername>
tf get /force /recursive <foldername>
Run Code Online (Sandbox Code Playgroud)

打开您的解决方案并确保一切正常。如有必要,请使用您之前自动复制的“备份”来纠正遇到的问题。