如何在TFS中撤消其他用户的签出?

如何在TFS中撤消其他用户的签出?,tfs,Tfs,作为常驻TFS管理员,有时会要求我撤消签出,通常是用户对签入源代码管理的特定文件的锁定 如何撤消其他用户的结账?我发现最简单的方法是使用免费的。它具有查看和撤消其他用户签出的选项。至少有两种不同的方法: 命令行 团队资源管理器附带了一个名为Tf.exe的命令行实用程序。查找文档。可以通过启动Visual Studio命令提示符窗口来访问它。该命令的语法为: tf undo [/workspace:workspacename[;workspaceowner]] [/server:serverna

作为常驻TFS管理员,有时会要求我撤消签出,通常是用户对签入源代码管理的特定文件的锁定


如何撤消其他用户的结账?

我发现最简单的方法是使用免费的。它具有查看和撤消其他用户签出的选项。

至少有两种不同的方法:

命令行

团队资源管理器附带了一个名为Tf.exe的命令行实用程序。查找文档。可以通过启动Visual Studio命令提示符窗口来访问它。该命令的语法为:

tf undo [/workspace:workspacename[;workspaceowner]] 
[/server:servername] [/recursive] itemspec [/noprompt]
一个文件

tf undo /workspace:workspacename;workspaceowner $/projectname/filename.cs

第二种是通过GUI,但不是标准的-您必须安装。有关如何使用此方法的详细信息,请参见

请记住,无论使用哪种方法,您都需要相应的权限。这些权限称为“撤消其他用户的更改”和“解锁其他用户的更改”。可以通过以下方式查看这些权限:

在源代码管理资源管理器中右键单击所需的项目、文件夹或文件 选择属性 选择安全选项卡 在顶部的“用户和组”部分中选择适当的用户或组 查看底部[用户/组]:部分的权限 删除工作区


在TFS sidekick中选择您的文件,然后在列表上方,您有一个撤消挂起的更改。单击该按钮,更改将撤消: 该图标类似于MS word中的撤消图标

中获得TFS的伙伴我自己也遇到了这个问题,并找到了一种更容易清理旧工作区的方法

在VisualStudio中,打开源代码管理资源管理器

从“工作空间”下拉列表中选择“工作空间…”

将出现一个对话框,显示当前电脑上的工作区。选择“显示远程工作区”

现在,您还将看到来自上一台PC的工作区,只要它们来自同一个用户帐户。选择旧工作区并单击“删除”。这将从TFS中删除旧工作区以及任何持久签出


我相信Arne已经找到了一个解决方案,但我希望这能帮助其他用谷歌搜索这个问题的人。

对我来说,命令tf undo/workspace:mydesk*.sdf没有报告任何挂起的更改,但不会撤消签出锁。我忘记了TFS服务器路径。在使用*.sdf itemspec之前,我假设它会从当前目录中解决这个问题。您提供的命令行现在对我有效。请确保在路径周围使用带空格的引号,否则您可能会收到这样的消息:$/xxx找不到挂起的更改我如何找到工作区名称?我知道我可以运行:tf workspaces/owner:[其他用户]/server:[服务器],我得到了用户拥有的四个工作区的列表,但是我如何知道它是文件的哪个工作区呢?PeterX,您可以通过在Visual Studio的解决方案资源管理器中导航到该文件来查看工作区,右键单击锁定的文件并选择“属性”,然后,在“状态”选项卡中,您可以获得有关工作区和锁定要使用的FileSimple工具的用户的信息。真的帮助我撤销了一个前员工签出的解决方案级别的更改“它是低于状态的伙伴”。搜索、选择文件、撤消。如果用户已离开公司,则您必须知道Active Directory用户名,该用户名并不总是与用户的名字和/或姓氏相同。我的公司分配了编号的用户名,所以我必须先查找退休用户,然后才能在VS或状态TFS Sidekick中搜索他。这非常有效。这比使用命令行工具试图找出工作区名称等要容易得多。如果您是工作区所有者,尤其是在清理当前工作区列表时,这会很好地工作。不太适合删除其他用户的工作区或签出锁:-。同意。这适用于从另一台电脑上删除您自己的签出锁定。对,但问题是特定于解锁签出给其他用户的文件。
tf workspace /delete WorkspaceName;User
             /server:http://server:8080/tfs/MyTeamCollection