TFS工具(tf.exe)使用与强制解除锁定签出
在工作区 NTP01_SUNTAI 中,NTP01TFSUser 为 签出 锁定了项 $/NTP01/EIPD/EIPD.Client/Views/Courseware/EditorOne.xaml.cs。
未签出任何项
上面的提示是非常常见的,如果项目是单签出模式,而签出文件的那家伙的电脑又炸了怎么办?
先分析一下,后面的代码请对照着替换:
这个是工作区:【NTP01_SUNTAI】,也就是客户端工作区
这个是用户名:【NTP01TFSUser】,也就是 服务器上登陆TFS的账户
这个是被锁定的文件目录:【$/NTP01/EIPD/EIPD.Client/Views/Courseware/EditorOne.xaml.cs】
我们接下来要使用此程序进入命令行模式操作:tf.exe
比如,Microsoft Visual Studio 2010的位置就是:
C:\Program Files\Microsoft Visual Studio 10.0\Common7\IDE\tf.exe
这个地址请自行斟酌替换,一般不需要目录,直接调用“tf”便会执行,因为系统的环境变量配置可能需要填写。
还有一点,这个操作是需要服务器账户权限的,如果服务器管理员账号密码你都没有,那就快去跟你大哥要去。
还有最另外的一点,由于tf.exe是Visual Studio的组件,所以见到这类程序,一般都是可以使用“VS 开发人员命令提示”来快速定位到CMD位置的,启动位置是“开始”→“vs”→“Visual Studio Tools”
查看:该开发人员的操作(2个参数【/server:】【/workspace】),这里的“用户名”指的是,服务器上登陆TFS的账户
tf status /server:http://服务器IP:8080/tfs/项目名称 /workspace:* /user:用户名
查看:被锁定的工作区和人员(2个参数【/owner:】【/server:】)
tf workspaces /owner:域名\用户名 /server:http://服务器IP:8080/tfs/项目名称
解除锁定签出:(3个参数【/workspace】【$】【【/server:】】)
tf undo /workspace:工作区名;用户名 $/被锁定的文件名目录(从vsts源代码窗口里的代码文件的右键属性可以查看或者第一步可以获取到)/server:http://服务器IP:8080/tfs/项目名称
辅助截图:
下方是执行过三个步骤的截图,不过账号和上方的代码有差别,请注意颜色标识的部分,如何得来的你们可以对应查看到。
提示:
如果你有很多文件需要解除锁定,会十分头疼的,但是这里我也不会更简便迅速的方法。
如果你对命令行还算熟悉,最好加入处理账号密码,不然每次命令都要输入,不会记住账号密码的
下方是 /? 命令参数,通过/login参数,自己把账号密码加入吧,然后在记事本里只需替换服务器位置(也就是$处),之后往cmd里粘贴执行。
从工作区中移除挂起的更改。 tf vc undo [/workspace:workspacename[;workspaceowner]] [/recursive] itemspec [/noprompt] [/login:username,[password]] [/collection:TeamProjectCollectionUrl]
参考文章:
http://www.cnblogs.com/HeroBeast/archive/2011/08/11/2134640.html
http://www.cnblogs.com/hanguoji/archive/2013/03/20/2971321.html