我正在使用 microsoft tfs 命令行客户端。它的 CLC zip 是从这里获得的。
我的邮编是 = TEE-CLC-14.134.0
。在 dir = 中提取C:\mstfscmdclient
问题 - 只要 TFS 用户密码中包含双引号,tf 命令就会失败。
例子 -
call mstfscmdclient\tf.cmd workspaces /collection:<my tfs server url> /login:<my tfs username>,<my tfs password>
Abcd@"2018, Abc"&<=2018
当密码带有双引号等
时,此命令将失败。当密码不带双引号(如, )时,
相同的命令有效。
错误 -Abcd@2018''
A~``$%^&<=@18b etc
An error occurred: Access denied connecting to TFS server <my tfs server url> (Authenticating as <my tfs username>)
请注意,我必须仅使用 CLC 客户端,并且必须仅使用 tf.cmd 执行 TFS 操作。这是在我的组织级别批准的,无法更改。因此,来自 Visual Studio、tf.exe 等工具的解决方案对我没有用处。
我已经阅读了以下官方文档,但没有获得有关密码策略或任何限制的详细信息。
[ Azure DevOps & TFS / Azure Repos / TFVC / Reference / TFVC command reference / Use Team Foundation version control commands]
和 [ Docs / Previous Versions / Visual Studio / Team Foundation Version Control Command-Line Reference / Tf Command-Line Utility Commands]
编辑 2 - 这个问题与Escapeing special characters in cmd不重复。
许多密码不适用于其中提出的解决方案。
例如 -时Year<"%^&*2018
不起作用。 tf.cmd
"Year<""%^&*2018", "Year<""%^&&*2018", "Year<""%^^&&*2018", "Year<""%%^^&&*2018"