当我打开我的项目时,我收到这条消息:"This solution is offline. [Team Foundation //https://xxxxxxxxxxxx/tfs/applications"
When I open my project, I get this message: "This solution is offline. [Team Foundation //https://xxxxxxxxxxxx/tfs/applications"
此解决方案处于离线状态。 [团队基础服务器:http://xxxxxxxxxx/tfs/applications]
该解决方案在之前 session 期间处于离线状态,并将保持离线状态。
什么样的问题会导致上述错误?
当发生这种情况时,没有 check-in 选项,并且尝试保存单个文件会导致出现一条消息,指出您尝试保存的文件已写保护。你想覆盖吗?我仍然可以通过响应 "yes." 来保存文件,但这一切都非常混乱和危险。是什么原因导致这种情况?
What kinds of problems would cause the above error?
我假设您使用的是非git
TFS 工作区(即使用 TFS 的老式集中式源代码控制服务,本质上是 Microsoft 未发明的 SVN。
TFS 工作区有两种形式:"Local" and "Server"。 "Local" 工作区 有点 类似于 git 存储库,因为它允许您在离线工作时进行签到,但它有局限性。 "Server" 工作区要求您与 TFS 服务器建立有效且可靠的连接,并且在断开连接时无法签入(当然,您仍然可以进行更改,但不能将它们保存到 TFS)。
我假设您有一个 "Server" 工作区而不是 "Local" 工作区,因此出现错误消息。
And when this happens, there is no check-in option and trying to save individual files results in a message that says the file you're trying to save is write protected.
正确。但是您始终可以删除文件系统中文件上的只读标志并编辑文件并进行手动同步以在重新连接后进行 TFS 签入。这些文件被标记为只读,因为 TFS 是围绕锁定文件和从源代码管理签出文件而设计的,因此它希望阻止您编辑尚未签出的文件。如果您确实编辑了一个尚未签出的文件,您仍然可以将其包含在签入中,但您需要在重新连接到 TFS 服务器时追溯签出它。
I can still save files by responding "yes." But all this is very confusing and dangerous.
这并不是真的危险 - 版本控制系统的全部意义在于获得进行任意更改的自由,并且能够在需要时回滚(或分支)(除了使用 TFS 而不是 git
(尤其是离线时),只是一个相当大的 PITA。
要解决这种情况:
- 打开Visual Studio(不需要先打开project/solution)。
- 假设您使用的是 VS2015 或更高版本,请打开团队资源管理器。
- 确保团队资源管理器处于 TFS 模式而不是
git
模式:
- 在 git 模式下,您会看到像 "Changes"、"Branches"、"Sync" 这样的按钮,它们有红色突出显示。
- 在 TFS 模式下,您会看到 "My Work"、"Pending Changes" 和 "Source Control Explorer".
等按钮
- 如果它处于 git 模式,请单击工具 windows 顶部工具栏中的“连接”按钮和 select 您的 TFS 服务器以切换到 TFS 模式。
- 您可能还需要转到“工具”>“选项”>“源代码管理”>“当前插件”:"Visual Studio Team Foundation Server"。
- 重新连接到 TFS 后,重新打开您的 project/solution。
- VS 应该检测到您在离线时进行了更改,并提议为您创建一个挂起的签入(并自动签出任何已编辑的文件)。如果没有,请打开 "Source Control Explorer" 并手动 运行 "Compare Folders" 工具并在进行新的签入之前签出它检测到的任何已更改的文件。
- 您可能还需要转到文件 > 源代码管理 > "Go online"
这是 Visual Studio 2008 年的屏幕截图(这是我能找到的唯一屏幕截图,抱歉 - 但菜单布局是相同的):
完成此操作并办理入住手续后,请务必拜访当地的鱼贩并购买一条大鳟鱼,然后拜访您的项目经理并给他们一个愉快的拍打,因为他们要求他们团队在 2020 年使用 TFS。甚至 Microsoft 也在内部使用 git。
此解决方案处于离线状态。 [团队基础服务器:http://xxxxxxxxxx/tfs/applications] 该解决方案在之前 session 期间处于离线状态,并将保持离线状态。
什么样的问题会导致上述错误? 当发生这种情况时,没有 check-in 选项,并且尝试保存单个文件会导致出现一条消息,指出您尝试保存的文件已写保护。你想覆盖吗?我仍然可以通过响应 "yes." 来保存文件,但这一切都非常混乱和危险。是什么原因导致这种情况?
What kinds of problems would cause the above error?
我假设您使用的是非git
TFS 工作区(即使用 TFS 的老式集中式源代码控制服务,本质上是 Microsoft 未发明的 SVN。
TFS 工作区有两种形式:"Local" and "Server"。 "Local" 工作区 有点 类似于 git 存储库,因为它允许您在离线工作时进行签到,但它有局限性。 "Server" 工作区要求您与 TFS 服务器建立有效且可靠的连接,并且在断开连接时无法签入(当然,您仍然可以进行更改,但不能将它们保存到 TFS)。
我假设您有一个 "Server" 工作区而不是 "Local" 工作区,因此出现错误消息。
And when this happens, there is no check-in option and trying to save individual files results in a message that says the file you're trying to save is write protected.
正确。但是您始终可以删除文件系统中文件上的只读标志并编辑文件并进行手动同步以在重新连接后进行 TFS 签入。这些文件被标记为只读,因为 TFS 是围绕锁定文件和从源代码管理签出文件而设计的,因此它希望阻止您编辑尚未签出的文件。如果您确实编辑了一个尚未签出的文件,您仍然可以将其包含在签入中,但您需要在重新连接到 TFS 服务器时追溯签出它。
I can still save files by responding "yes." But all this is very confusing and dangerous.
这并不是真的危险 - 版本控制系统的全部意义在于获得进行任意更改的自由,并且能够在需要时回滚(或分支)(除了使用 TFS 而不是 git
(尤其是离线时),只是一个相当大的 PITA。
要解决这种情况:
- 打开Visual Studio(不需要先打开project/solution)。
- 假设您使用的是 VS2015 或更高版本,请打开团队资源管理器。
- 确保团队资源管理器处于 TFS 模式而不是
git
模式:- 在 git 模式下,您会看到像 "Changes"、"Branches"、"Sync" 这样的按钮,它们有红色突出显示。
- 在 TFS 模式下,您会看到 "My Work"、"Pending Changes" 和 "Source Control Explorer". 等按钮
- 如果它处于 git 模式,请单击工具 windows 顶部工具栏中的“连接”按钮和 select 您的 TFS 服务器以切换到 TFS 模式。
- 您可能还需要转到“工具”>“选项”>“源代码管理”>“当前插件”:"Visual Studio Team Foundation Server"。
- 重新连接到 TFS 后,重新打开您的 project/solution。
- VS 应该检测到您在离线时进行了更改,并提议为您创建一个挂起的签入(并自动签出任何已编辑的文件)。如果没有,请打开 "Source Control Explorer" 并手动 运行 "Compare Folders" 工具并在进行新的签入之前签出它检测到的任何已更改的文件。
- 您可能还需要转到文件 > 源代码管理 > "Go online"
这是 Visual Studio 2008 年的屏幕截图(这是我能找到的唯一屏幕截图,抱歉 - 但菜单布局是相同的):
完成此操作并办理入住手续后,请务必拜访当地的鱼贩并购买一条大鳟鱼,然后拜访您的项目经理并给他们一个愉快的拍打,因为他们要求他们团队在 2020 年使用 TFS。甚至 Microsoft 也在内部使用 git。