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

bre*_*ers 89 tfs tfs2008 tfs2010 tfs2012 tfs2013

作为常驻TFS管理员,有时我被要求撤消用户对签入源控件的某个文件的签出(通常是锁定).

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

bre*_*ers 135

至少有两种不同的方法:

命令行

Team Explorer附带了一个名为Tf.exe的命令行实用程序.在这里找到文档.可以通过启动Visual Studio命令提示符窗口来访问它.该命令的语法是:

tf undo [/workspace:workspacename[;workspaceowner]] 
[/server:servername] [/recursive] itemspec [/noprompt]
Run Code Online (Sandbox Code Playgroud)

对于一个文件

tf undo /workspace:workspacename;workspaceowner $/projectname/filename.cs
Run Code Online (Sandbox Code Playgroud)

GUI

第二种是通过GUI,但不标准 - 你必须安装TFS电动工具.有关如何使用此方法的详细信息,请参见此处.

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

  1. 在Source Control Explorer中右键单击所需的项目,文件夹或文件
  2. 选择属性
  3. 选择"安全"选项卡
  4. 在顶部的"用户和组"部分中选择适当的用户或组
  5. 查看底部的"[用户/组]的权限:"部分

删除工作区

tf workspace /delete WorkspaceName;User
             /server:http://server:8080/tfs/MyTeamCollection 
Run Code Online (Sandbox Code Playgroud)


Mar*_*arz 36

我发现最简单的方法是使用免费的TFS Sidekick应用程序.它可以选择查看和撤消其他用户的结帐.

  • 它低于"Status Sidekick".搜索,选择文件,撤消. (5认同)

sae*_*hem 27

我自己就遇到了这个问题,并找到了一种更简单的清理旧工作区的方法.

  1. 在Visual Studio中,打开源代码控制管理.

  2. "工作区"下拉列表中选择" 工作区... "

  3. 将出现一个对话框,显示当前PC上的工作区.选择" 显示远程工作区 "

  4. 您现在还将看到以前PC中的工作区(只要它们来自同一个用户帐户).选择旧工作区,然后单击" 删除 ".这应该从TFS中删除旧工作区以及任何持久检出.

我确信Arne找到了一个解决方案,但我希望这可以帮助那些谷歌问题的人.

  • 如果您是工作区所有者,这可以很好地工作,尤其是清理当前工作区列表.删除其他用户的工作区或结帐锁不太好:-). (7认同)
  • 是的,但问题特定于解锁签出给不同用户的文件。 (2认同)

小智 9

在TFS sidekick中选择您的文件,然后在列表上方,您有一个"撤消待定更改".点击它,更改将被撤消:)图标类似于MS字中的"撤消"图标获取来自http://www.attrice.info/cm/tfs/index.htm的 TFS sidekicks