如何从批处理中仅签入 TFS 中的特定分支?

How to check in only a specific branch in TFS from batch?

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

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

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

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

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

tf.exe checkin 命令会签入您的待定更改。如果您的更改来自特定分支,那么签入将到该分支。您无法在 Branch a 中修改文件并签入 Branch b,您需要在 Branch b 中处理文件才能签回更改。

您可以复制修改后的 file/s 并将它们粘贴到 Branch b 工作区,然后进行签入。

如果只想签入一个文件,只需指定文件即可:

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

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

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

你的情况:

checkin %4 /noprompt ...

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