tf.exe对vsts进行身份验证

时间:2017-07-14 15:38:31

标签: azure-devops devops azure-pipelines azure-devops-rest-api

我正在尝试列出所有工作区并尝试使用以下命令行使用vsts验证tf.exe。

tf workspaces / Collection:https://[account].visualstudio.com/defaultcollection / login:USername,Password

vsts帐户由与本地AD同步的Azure Active Directory支持。

当我从visual studio连接到vsts然后在没有登录开关的情况下运行上面的tf.exe命令时,它工作正常。

但是,当我使用tf.exe的登录开关并使用我在visual studio中使用的相同凭据时它会抛出

TF30063:您无权访问https://[account].visualstudio.com/defaultcollection TF30063:您无权访问https://[account].visualstudio.com/defaultcollection

我想要实现的是,我要配置服务器,然后不要登录到visual studio,并希望我的tf工作,因为它工作时登录到团队资源管理器中的visual studio在线帐户我的视觉工作室。

我是vsts帐户的管理员,对所有内容都有充分的权利。如果还有其他方法可以使用可以正常工作的PAT令牌验证TF.exe。

我会再次使用tf.exe从自动构建中获取checkin命令。 任何帮助解决这个问题将不胜感激。

2 个答案:

答案 0 :(得分:1)

TFVC Build Tasks extension中有“签入更改”任务,您可以使用它来签入更改。此外,您可以调用TF命令在构建过程中检入更改,它使用构建服务帐户。

另一方面,您可以创建一个控制台应用程序来通过TFS API检查更改(Workspace.CheckIn method),然后通过命令行调用此应用程序。

答案 1 :(得分:1)

我在运行TF30063时遇到了同样的问题(tf.exe)。对我来说,解决方案是:

  • 退出所有正在运行的Visual Studio实例
  • %LocalAppData%\Microsoft\Team Foundation\7.0\Cache重命名为%LocalAppData%\Microsoft\Team Foundation\7.0\Cache_old(或者您可以将其删除;但我想保留原文,以便我可以选择在返回VS时恢复它)。注意:7.0根据您使用的TF版本而有所不同。
  • 导航到我项目的文件夹pushd c:\projects\vsts_tfvc_repos\Project123
  • 运行tf /collection:myinstance.visualstudio.com /workspace:%computername% /login:myMicrosoftAccount@example.com,myPassword以在正确的帐户下初始化会话 此后,一切都按预期工作......