首页 > 解决方案 > 如何从批处理中仅签入 TFS 中的特定分支?

问题描述

我正在使用批处理签入 TFS。

目前,我正在使用以下行:

"C:\Program Files (x86)\Microsoft Visual Studio\2017\Community\Common7\IDE\CommonExtensions\Microsoft\TeamFoundation\Team Explorer\tf.exe" checkin  /noprompt /login:%un%,%pass% /comment:%1

如何指定仅将文件签入到特定分支?

假设分支名称作为 %4 中的输入。

标签: batch-filetfstfvc

解决方案


tf.exe checkin命令会检查您的待定更改。如果您的更改来自特定分支,则签入将到此分支。您不能修改 Branch 中的文件a并签入 Branch b,您需要处理 Branch 中的文件b才能签入更改。

您可以复制修改后的文件并将它们粘贴到分支b工作区中,然后进行签入。

如果您只想签入一个文件,您可以简单地指定该文件:

checkin c:/test.cs /noprompt ...

如果您只想签入特定分支(或源代码管理中的位置),只需指定服务器位置:

checkin $/Project/Test/BranchA/* /noprompt ...

在你的情况下:

checkin %4 /noprompt ...

PS - 最后%4必须包含/*$/BranchA- 不工作,$/BranchA/*- 工作)。


推荐阅读