工作区命令 (Team Foundation 版本控制)

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

使用 工作区 命令可以创建、删除、查看或修改与工作区关联的属性和映射。

先决条件

若要修改或删除现有工作区,你必须是所有者或具有设置为“允许”的全局管理工作区权限。 若要创建工作区,必须将全局 “创建工作区 ”权限设置为 “允许”。 若要为其他用户创建工作区,必须将 “管理工作区 ”权限设置为 “允许”。 有关详细信息,请参阅 默认 TFVC 权限

语法

tf workspace /new [/noprompt] [/template:workspacename[;workspaceowner]]
[/computer:computername] [/comment:("comment"|@comment file)]
[workspacename[;workspaceowner]] [/login:username,[password]]
[/collection:TeamProjectCollectionUrl] [/permission:(Private|PublicLimited|Public)]
[/location:(local|server)]
tf workspace /delete [/collection:TeamProjectCollectionUrl] workspacename[;workspaceowner] [/login:username,[password]]
tf workspace [/collection:TeamProjectCollectionUrl] [/comment: ("comment"|@comment file)] [/newname:workspacename]
[workspacename[;workspaceowner]] [/newowner:ownername] [/computer:computername] [/permission:(Private|PublicLimited|Public)] [/login:username,[password]]
[/location:(local|server)]

参数

参数

Argument 说明
workspacename 指定要创建、编辑、删除或显示其相关信息的工作区的名称。
workspaceowner 指定工作区的用户名。 当工作区所有者不是执行命令的人员时,此参数是必需的。
计算机名称 /computer 选项提供值。
comment /comment 选项提供值。
@commentfile 指定应在其中读取注释的文件的路径。
username 提供 /login 选项的值。 可以将用户名值指定为 DOMAIN* UserName* 或 UserName
TeamProjectCollectionUrl 包含要创建、编辑、删除或显示信息的工作区的项目集合的 URL (,例如, http://myserver:8080/tfs/DefaultCollection).
ownername /newowner 选项提供值。

选项

选项 说明
/new 创建新的工作区。
/template 指定要用作创建新工作区的模板的现有工作区。 新工作区使用现有工作区的映射。
/delete 删除指定的工作区。
/computer 指定要在其中创建工作区的计算机的名称。 此选项是高级选项。
/comment 提供描述工作区的注释。
/newname 重命名现有工作区。
/noprompt 执行指定的工作区命令而不显示对话框。
/collection 指定项目集合。
/permission 指定工作区权限的选项:
  • 专用:只有所有者可以使用、签入文件或管理工作区。

  • 公共限制:任何有效用户都可以使用工作区。 但是,只有所有者才能签入文件或管理工作区。

  • 公共:任何有效用户都可以使用、签入文件或管理工作区。

/location 指定创建工作区的位置:
  • local:在客户端计算机上。 这是默认值。

  • 服务器:在 TFS 服务器上。

/login 指定使用Azure DevOps对用户进行身份验证的用户名和密码。
/newowner 指定工作区的新所有者的用户名。

注解

工作区是服务器上的文件和文件夹的本地副本,以及本地所做的任何更改。 添加、编辑、删除、移动、重命名或更改任何版本控制的项时,更改将隔离在工作区中,你可以在工作区中进行和测试更改。 签入团队代码库的工作将提交到服务器,并在执行签入时可供工作区外部的其他用户使用。

有关如何查找 tf 命令行实用工具的详细信息,请参阅 使用 Team Foundation 版本控制命令

创建工作区

必须先创建工作区或将现有项与当前目录相关联,然后才能将文件添加到版本控制服务器或签出服务器上的项以编辑它们。 有关详细信息,请参阅 首次创建工作区并获取文件

若要使当前目录成为计算机上的现有工作区的工作文件夹,请键入 tf workspaceworkspacename,其中 workspacename 是现有工作区的名称。 此时会显示 “编辑工作区 ”对话框。 单击此处可输入新的工作文件夹,键入要映射源代码管理文件夹框中当前目录的服务器路径,在“本地文件夹”框中键入当前目录,然后单击“确定”。

创建新工作区时,可以将 模板工作区 指定为 /new 选项的一部分。 指定模板工作区时,Team Foundation 会在当前计算机上创建新工作区,将所有者设置为当前所有者,并将以下工作区属性从模板工作区复制到新工作区:映射和注释。 如果未指定任何名称,系统会根据当前计算机名称使用名称。 使用模板创建工作区时,Team Foundation 不会检索从服务器映射到的文件。 使用 Get Command 将新工作区与服务器上的最新版本同步。

单文件夹映射

可以选择仅将版本控制文件夹的直接子级映射到本地工作区。 为此,请在“添加工作区”对话框中的“源代码管理文件夹”框中添加星号通配符。 例如 $/folder/*。 否则,默认情况下,版本控制文件夹的所有子级以递归方式映射到本地工作区。

版本控制层次结构中的单个文件夹映射非常有用,因为它会限制下载到客户端计算机的项目数。 限制下载文件的另一种方法是隐藏不需要在工作区中拥有的文件。 有关详细信息,请参阅 优化工作区。 这提供了更快的下载时间,并节省客户端计算机上的磁盘空间。

删除工作区

如果删除包含挂起更改的工作区,Team Foundation 将在删除过程中取消挂起的更改。 删除工作区不会删除该工作区中的客户端计算机上的文件和文件夹。

注意

命令手动运行需要 /noprompt 用于绕过用户确认的选项。 如果使用 PowerShell Start() 的方法运行命令,请小心,因为可以自动设置此选项。

编辑工作区

可以更改以下工作区属性:

  • 工作区名称
  • 评论
  • 工作文件夹映射

如果未提供工作区规范,则使用当前文件夹的工作区。

示例

以下示例打开 “添加工作区 ”对话框并创建新的工作区。 可以使用“ 添加工作区 ”对话框编辑源代码管理文件夹、所有者、计算机、注释和本地文件夹。

c:\projects>tf workspace /new /collection:http://myserver:8080/tfs/DefaultCollection

以下示例创建名为 Beta1 的新工作区,并将 jenh 分配为工作区所有者。 必须具有 AdminWorkspaces 权限才能将新工作区的所有权分配给其他用户。 有关安全权限的详细信息,请参阅 默认 TFVC 权限

c:\projects>tf workspace /new Beta1;jenh

以下示例使用 jenh 拥有的 Beta1 工作区创建一个新工作区作为模板。

c:\projects>tf workspace /new /template:Beta1;jenh /collection:http://myserver:8080/tfs/DefaultCollection

以下示例从服务器中删除 Beta1 工作区。

c:\projects>tf workspace /delete Beta1

以下示例编辑当前工作区的属性。

c:\projects>tf workspace

以下示例打开用户 jenh 是所有者的 Beta1 工作区,以便查看其属性和映射。 如果拥有 AdminWorkspaces 权限,可以更改工作区属性和映射。

c:\projects> tf workspace Beta1;jenh