决定使用本地还是服务器工作区
Azure DevOps Services | Azure DevOps Server 2020 | Azure DevOps Server 2019 | TFS 2018
Visual Studio 2022 |Visual Studio 2019 |Visual Studio 2017 |Visual Studio 2015 |Visual Studio 2013
创建或编辑工作区时,可以指定其位置是“本地”还是“服务器”。
何时应使用本地工作区?
如果计算机与连接到的Azure DevOps实例之间没有可靠的连接,则使用本地工作区,工作区中将少于 100,000 个项目。 如果你不需要作为团队的一部分工作,并且强烈建议以类似于 Git 的方式处理文件系统,则也可能更可取。
重要
使用本地工作区可能会降低性能,因为项数接近或超过 100,000。 这是因为本地工作区保留同一文件的多个副本,以便在本地启用某些版本控制操作,因为DevOps Server连接无法可靠地可用。 这也意味着磁盘上占用的空间更多。
我可能何时需要使用服务器工作区?
当未满足使用本地工作区的特定条件时,或者如果...
你要使用 Visual Studio 2010 或早期版本在工作区中工作。
需要使用 “启用获取最新签出 ”选项。
断开连接时在服务器工作区中工作
如果暂时断开与DevOps实例的连接,则仍可在服务器工作区中工作,方法是采用解决方案“脱机”。 稍后,当连接可用时,可以采用解决方案“联机”返回到连接行为。 Visual Studio将检测断开连接的条件,并自动使解决方案脱机,但如果希望手动执行此操作,则执行这些步骤。
提示
如果脱机工作对你很重要,则应考虑使用本地工作区而不是服务器工作区,请参阅本主题前面的 本地工作区 。
使解决方案脱机
从本地工作文件夹中打开要使用的解决方案。
如果服务器处于脱机状态,将显示 “Go 脱机 ”对话框。
选择 “确定”
将编辑保存到解决方案中的文件时,可能会提示你使用“ 保存Read-Only文件 ”对话框。 这是正常情况。 选择 “覆盖 ”以从文件中删除写入保护。 在脱机时,它只应为每个文件询问一次。
Visual Studio不会自动将解决方案重新联机,用户必须使用以下步骤执行此操作。
当DevOps服务可用时使更改联机
在解决方案资源管理器中,打开解决方案或文件的上下文菜单,然后选择“联机”。
- 或 - 在“文件”菜单中的“源代码管理”下,选择“联机”。
此时将显示 “Go Online ”对话框,并显示你脱机所做的更改。
选中要签入的每个更改的复选框,然后选择“联机”。
脱机所做的更改会作为挂起的更改添加到 Team Foundation 版本控制中。
管理团队的项目集合工作区设置
如果你是管理员,则可以指定默认情况下为团队成员创建哪种类型的工作区Visual Studio:本地或服务器。 还可以为团队的服务器工作区启用异步签出。
在菜单栏上,选择“团队”,Project集合设置“源代码管理”。
此时会显示“源代码管理设置”对话框。
在“工作区设置”选项卡上,选择“本地”或“服务器”选项按钮。
通过选择“ 在服务器工作区中启用异步签出”,可以缩短系统签出文件到服务器工作区所需的时间。 如果您选择此选项:
将不再强制实施 PendChange 权限。
签出锁定将被禁用
从命令提示符处工作
问题解答
问:在已经应用签出锁定的情况下,某人仍然签出了文件。 这是怎么发生的?
答: 使用本地工作区会使 签出锁 不可强制执行。 如果有足够的 权限 ,可以使用 工作区命令 查看项目集合中使用的本地工作区。
tf workspaces /format:detailed /owner:* /collection:https://YourServer/YourCollection/
问:为什么我看不到我的团队的某些成员签出文件时?
使用本地工作区的团队成员的挂起更改对 源代码管理资源管理器中的其他团队成员不可见。
问:能否切换工作区的位置?
答: 是的,只要需要,就可以将工作区的位置从服务器更改为本地或从本地更改为服务器。 请参阅 创建和使用工作区。
问:我是否可在 Visual Studio 的多个实例中使用同一工作区?
答:尽管Visual Studio不会阻止你针对同一工作区运行多个实例,但不支持此用法。 此外,如果你使用本地工作区,则此工作方式更有可能会导致问题。
问:本地工作区如何工作?
答: 本地工作区缓存每个文件的未修改版本,使你能够在不连接到服务器的情况下编辑、比较和执行其他操作。