Powershell Get-TfsWorkspace找不到作为另一个用户创建的工作空间 Microsoft.TeamFoundation.PowerShell

问题描述

我无法从另一个用户创建的TFS检索工作空间。工作区位置是本地的,权限设置为公共工作区。

我使用一个已知的映射文件夹查找我的工作空间(在所有情况下,我的机器上只有一个工作空间)

$w = Get-TfsWorkspace -Path "C:\LocalRepo\Path_That_I_KNow_Is_Mapped"

当我在自己的用户(以前登录过Visual Studio用户)下运行PowerShell脚本时,此方法有效。但是,当我以尚未打开Visual Studio并设置工作区的新用户身份运行该文件时,显然找不到该文件。我需要执行此操作,因为我想通过Ansible自动化该操作,该操作将在管理员帐户下运行,而无需首先登录任何地方。

这有可能吗?

解决方法

您可以尝试使用一些参数来实现此目的:

$WorkSpace = Get-TfsWorkspace -Server $tfs -Owner $Owner -Name $Workspacename

尝试直接指定工作空间的所有者。

如果您仍然无法查询任何信息。确保您用于运行Powershell的用户对工作区具有足够的权限。

要运行cmdlet,必须将“读取”权限设置为“允许”。换句话说,您应该确保管理员帐户能够访问您的TFS工作区。