如何从Team Foundation Server中的其他人解锁文件

时间:2010-08-10 17:21:26

标签: tfs filelock

我们有一个项目存储在我们的TFS服务器中,一些文件由我从另一台计算机和另一个用户(两个都不再使用)签出。有没有办法强制解锁文件(没有对它进行任何更改,所以如果我只能这样做,这样做是安全的。)

12 个答案:

答案 0 :(得分:118)

以下是我在Visual Studio 2012中的操作

(注意:我安装了TFS Power Tools,如果您没有看到所描述的选项,则可能需要安装它们。http://visualstudiogallery.msdn.microsoft.com/b1ef7eb2-e084-4cb8-9bc7-06c3bad9148f

如果您以团队项目管理员(或至少具有“撤消其他用户更改”访问权限的人)访问源代码管理资源管理器,则可以在Visual Studio 2012中执行以下操作以清除锁定和签出。< / p>

  1. 从Source Control Explorer中找到包含锁定文件的文件夹。
  2. 右键单击并选择查找,然后按状态查找...
  3. 出现“在源代码管理中查找”窗口
  4. 点击查找按钮
  5. 应显示“在源代码管理中查找”选项卡,显示已签出的文件
  6. 右键单击要解锁的文件
  7. 从上下文菜单中选择撤消...
  8. 出现确认对话框。点击按钮。
  9. 该文件应从“在源代码管理中查找”窗口中消失。
  10. 该文件现已解锁。

答案 1 :(得分:43)

您可以使用TFS Sidekicks工具的Status Sidekick并解锁其他用户签出的文件。为此,您应该成为该特定团队项目的管理员组的一部分(或)您的组应具有撤消和解锁默认管理员组具有的其他用户更改的权限。

您可以在此处获取该工具:http://www.attrice.info/cm/tfs/

答案 2 :(得分:33)

我可以使用以下命令撤消其他用户的结帐:

tf undo {file path} /workspace:{workspace};{username}

如果从PowerShell运行命令,则需要将该分号括在双引号中。我们正在运行TFS 2010(和VS 2010)。

免责声明:我是在http://fci-h.blogspot.com/2011/01/how-to-force-undo-checkout-tfs.html

的FCI-H博客上得到的

答案 3 :(得分:20)

Team Foundation Sidekicks有一个状态搭档,可让您查询已签出的工作项。选择工作项后,单击工具栏上的“撤消锁定”按钮。

<强>版权

请记住,您需要适当的权利。权限称为“撤消其他用户的更改”和“解锁其他用户的更改”。可以通过以下方式查看这些权限:

  1. 在“源代码管理资源管理器”中右键单击所需的项目,文件夹或文件
  2. 选择属性
  3. 选择“安全”标签
  4. 在顶部的“用户和组”部分中选择适当的用户或组
  5. 查看底部
  6. 的“[用户/群组的权限]:”部分

    Screenshot of unlocking a file using Team Foundation Sidekicks

    免责声明:此答案是Brett Roger编辑的answersimilar question的转发。

答案 4 :(得分:15)

如果您使用管理员帐户登录源控件,则可以强制撤消签出,或使用您提供的任何文件签入。

答案 5 :(得分:12)

我用TFS powertools解决了这个问题(2011年12月 - 针对VS 2010 TFS 2010)

http://visualstudiogallery.msdn.microsoft.com/c255a1e4-04ba-4f68-8f4e-cd473d6b971f

在源代码管理中查找|状态...允许您查找签出给特定人员的所有文件

右击和UNDO ...可以删除每个结帐。

答案 6 :(得分:6)

基于stackptr回答,我创建了批处理文件UnlockOther.bat

@rem from https://stackoverflow.com/questions/3451637/how-to-unlock-a-file-from-someone-else-in-team-foundation-server
@rem tf undo {file path} /workspace:{workspace};{username

call "C:\Program Files (x86)\Microsoft Visual Studio 10.0\VC\vcvarsall.bat" x86
@echo on
tf undo $/MyTfsProject/path/fileName.ext /workspace:CollegeMachine;CollegueName /login:MyLogin 
@pause

答案 7 :(得分:4)

Team Foundation Sidekicks对我很好。

该文件未解锁,因此我对待处理的更改进行了撤消,之后我可以删除该文件。

答案 8 :(得分:1)

使用TFS附带的unlock命令

  1. 单击“开始”,单击“所有程序”,单击“Microsoft Visual Studio 2008”,单击“Visual Studio工具”,然后单击“Visual Studio命令提示符”。
  2. 键入以下命令并使用适当的参数信息替换参数以满足您的需要: tf lock /lock:none $/MyTeamProject/web.config

    tf lock itemspec /lock:(none|checkout|checkin) [/workspace:workspacename] [/recursive] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]

  3. 来自MSDN

答案 9 :(得分:1)

您需要是项目 admin 或拥有锁定文件用户的tfs帐户(用户名/密码)

在Visual Studio 2019中:

  • 菜单>视图>终端 (ctrl +`)
  • 等到开发人员powershell或命令提示符加载到光标上,如下所示:
    Drive:\your solution path>
  • 您必须撤消更改才能解锁文件:
    tf vc undo /workspace:"workspacename;worksapceowner" "$/path/[file.extension][*]" [/recursive] [/login:"user name,password"]
    例如:-
    tf vc undo /workspace:"DESKTOP-F6BN2GHTKQ8;Johne123" "$/mywebsite/mywebsite/appsettings.json"

答案 10 :(得分:0)

2019年的答案,因为以上大部分内容已被废止。

tf undo /workspace:"hostname;username" "$/path/*" /s:https://yourhostname/tfs在提升的命令提示符下,例如 C:\Program Files (x86)\Microsoft Visual Studio 14.0\Common7\IDE>

答案 11 :(得分:0)

就我而言,我尝试使用tf lock来解锁文件,但被告知无法执行此操作,因为旧计算机上不再存在的陈旧工作空间是本地工作空间。然后,我尝试使用tf workspace /delete删除工作空间,但是删除工作空间并没有删除锁定(然后我无法尝试再次解锁它,因为我只是收到一个错误消息,说工作空间已不存在)。

我最终tf destroy再次检查了文件,这很傻,并且具有从以前的变更集中删除\的不良效果,但至少让我们重新工作了。在这种情况下,这没什么大不了的,因为自从签入文件以来从未更改过文件。