如果TFS中的文件被其他人锁定,您该怎么办?

64

有人离开了公司,但在离开前出于未知原因锁定了所有文件。

如何解锁它们以便其他开发人员可以工作?

12个回答

0

以下是适用于我的方法,我在TFS和项目中拥有管理员权限:

在Visual Studio 2015中:

  1. 转到团队资源管理器
  2. 右键单击解决方案,选择在源代码控制资源管理器中打开
  3. 在左侧,右键单击解决方案
  4. 选择高级选项
  5. 选择锁定...
  6. 在左侧,右键单击解决方案
  7. 选择高级选项
  8. 选择解锁(现在您可以选择解锁)

现在,每个开发人员都可以轻松提交他们的更改:)


-3

请将此解决方案作为最后的手段

我正在使用TFS 2012。我去了TFS数据库并运行了以下查询。它起作用了!当然,在处理数据库时要非常小心,备份等等。

数据库名为Tfs_<<your_TFS_collection_name>>。忽略Tfs_Configuration MSSQL数据库。如果您没有Tfs_<<your_TFS_collection_name>>数据库,则设置可能在Tfs_DefaultCollection数据库中。锁存储在tbl_PendingChange.LockStatus中。

/*Find correct row*/
SELECT LockStatus, PendingChangeId, *
FROM tbl_PendingChange
WHERE TargetServerItem like '%<<fileName>>%'

/*Set lock status to NULL (mine was set to 2 initially)*/
UPDATE tbl_PendingChange SET LockStatus = NULL WHERE
TargetServerItem like '%<fileName>>%'
AND PendingChangeId = <<PendingChangeId from above>>

请解释一下downvote。我尝试了所有其他建议,但我可以确认这是唯一对我有用的方法。在我的情况下,由于雇主将TFS移动到另一个服务器时犯了一些错误,该文件被锁定。它被我的旧用户名锁定,而该用户名已被删除。我的新用户名不同,我找不到其他将其重新关联的方法。 - Dennis T --Reinstate Monica--
3
你永远不应该直接操作TFS数据库。你应该使用由Microsoft提供的工具,甚至第三方工具如Atrice TFS Sidekicks。这就是我投反对票的原因。 - SoftwareCarpenter
我尝试了网上建议的所有方法:TFS管理工具,删除缓存文件夹,使用工作区下拉菜单,tf工作区/ remove:*,从控制面板、IE等清除凭据。我没有尝试Sidekicks,但在尝试其他工具数小时后,我认为直接去源头更好-这起作用了,我的TFS仍然存在。最后,还原更改只需将NULL替换为旧值即可。 - Dennis T --Reinstate Monica--
使用Atrice辅助工具非常容易。只需找到文件并点击解锁按钮即可。您是管理员还是检查了该文件的权限?无论如何,如果您得到了所需内容,就可以了。 - SoftwareCarpenter
由于我的 TFS 管理员无法解决这个问题,所以我被赋予了管理员权限来进行故障排除。 几天前他已经将 TFS 迁移到新服务器上。该文件被我在旧服务器上的旧用户账户锁定。 没有重新启用旧服务器或帐户的方法。您认为 Sidekicks 仍然有效吗? 我认为它不会。 - Dennis T --Reinstate Monica--
1
是的,Sidekicks 可以让你查看所有工作区,并允许你删除它们。它会删除存储在 TFS 中的引用,而不是与其相关联的实际计算机。 - SoftwareCarpenter

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接