我在Visual Studio 2012(在TFS源代码控制下)中打开了我的解决方案,而TFS服务器(2010)关闭了。当我对其中一个文件进行更改并试图保存它时,我得到了一个提示,问我是否想要覆盖文件,说TFS服务器宕机了(不记得确切的单词),并且在输出窗口中出现了以下消息:

This solution is offline.  [Team Foundation Server: http://tfs1:8080/tfs/server]
The solution was offline during its previous session and will remain offline.

如何让文件更改被识别为挂起更改,并使整个解决方案重新联机?


当前回答

(如果您缺少AutoReconnect或脱机注册表值,则从上述解决方案中选择额外步骤)

针对Visual Studio 2015,版本14

Turn off all VS instances HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\14.0\TeamFoundation\Instances{YourServerName}\Collections{TheCollectionName} (To get to this directory on Windows, hit the Windows + R key and search for "regedit") Set both the Offline and AutoReconnect values to 0. If you are missing one of those attributes (in my case I was missing AutoReconnect), right click and and create a new DWORD(32-bit) value with the desired missing name, AutoReconnect or Offline. Again, make sure both values are set to zero. Restart your solution

额外的信息: 博客MSDN -我的解决方案何时以及如何下线?

其他回答

我在网上搜索了解决方案,找到了这个解决方案,但不太热衷于注册表的变化。

我发现了一个更好的方法:右键单击解决方案资源管理器顶部的解决方案名称,并选择Go Online选项。单击此选项允许我选择脱机时更改的文件,并使解决方案再次联机。

在找到解决方案后,我发现下面的msdn论坛线程证实了上述情况。

我的方法之一是“添加到源代码控制”,然后选择“Git”。

你可以使用注册表编辑器。

关闭所有VS实例。 打开注册表编辑器,转到: 微软HKEY_CURRENT_USER \ Software \ \ VisualStudio \ 11.0 \ TeamFoundation \实例 找到合适的服务器,例如:team32system1 进入Collection,然后点击DefaultCollection: 微软HKEY_CURRENT_USER \ Software \ \ VisualStudio \ 11.0 \ TeamFoundation \ \ team32system1 \ \ DefaultCollection集合实例 “离线键”设置为“0” 在vs中打开解决方案,之后会弹出你想将解决方案带到在线模式的问题。

(如果您缺少AutoReconnect或脱机注册表值,则从上述解决方案中选择额外步骤)

针对Visual Studio 2015,版本14

Turn off all VS instances HKEY_CURRENT_USER\SOFTWARE\Microsoft\VisualStudio\14.0\TeamFoundation\Instances{YourServerName}\Collections{TheCollectionName} (To get to this directory on Windows, hit the Windows + R key and search for "regedit") Set both the Offline and AutoReconnect values to 0. If you are missing one of those attributes (in my case I was missing AutoReconnect), right click and and create a new DWORD(32-bit) value with the desired missing name, AutoReconnect or Offline. Again, make sure both values are set to zero. Restart your solution

额外的信息: 博客MSDN -我的解决方案何时以及如何下线?

以上两种解决方案在Visual Studio Community 2017 v15.7.1上都不适用。不知何故,在上下文菜单中没有“Go Online”选项。我尝试了这里建议的注册表编辑,但只显示了无法找到绑定的错误。对我来说,有效的方法是从Change Source Control菜单中重新绑定解决方案到服务器。

进入文件->源代码控制->高级->更改源代码控制,并确保您的解决方案绑定到源代码控制。如果不是(像我的),然后点击绑定按钮,它会自动搜索在线TFS服务器,并重新绑定您的解决方案。