【问题标题】:tf get for a specific branchtf 获取特定分支
【发布时间】:2020-07-04 03:12:48
【问题描述】:

假设我有两个分支:dev 和 release,每月一次需要将 dev 分支的所有更改合并到 release 分支。这可以从 Visual Studio 手动完成,但我想自动编写一个可执行该操作的 powershell 脚本。

为了将一个分支的更改合并到另一个分支,我需要在一个环境中映射并“获取最新”两个分支。 这就是我在本地开发环境中所做的:

将服务器文件夹($Development/Trunk/Dev) 映射到本地文件夹(C:\Temp\MyFolder)

.\TF.exe workfold /map /workspace:MyWorkspace "$Development/Trunk/Dev" C:\Temp\MyFolder

同时我已经将 $Development/Trunk/Release 映射到另一个文件夹,比如说 C:\Temp\AnotherFolder

当我跑步时

.\TF.exe get

它将文件从 Release 分支下载到 C:\Temp\AnotherFolder

我尝试过运行:

.\TF.exe get /overwrite C:\Temp\MyFolder /recursive /noprompt

希望它能从 Dev 分支获取文件(映射存在)

但它是做什么的 - 它从 Release 分支下载文件到文件夹 C:\Temp\MyFolder。我没有在 microsoft 文档中找到如何指定源分支...

【问题讨论】:

  • 谢谢,但不,找到了另一种似乎更好的方法 - 请参阅我的回答

标签: powershell tfs tfvc


【解决方案1】:

您可以尝试将$Development/Trunk 映射到本地C:\Temp\MyFolder,然后运行以下命令转到文件夹C:\Temp\MyFolder

C:\Temp\MyFolder>tf get Dev
C:\Temp\MyFolder>tf get Release

【讨论】:

    【解决方案2】:

    TF 使用工作区映射来定义它需要从哪个分支到哪个本地文件夹来获取最新的。

    所以:

    1) tf get 将导致获取工作区中映射的所有内容的最新版本

    2) tf get <path to your local folder where a specific branch is mapped> 将根据您的工作区映射仅获取来自 Team Foundation Server 的相应分支的最新信息

    附:对于第二点,您可以同时指定 TFS 路径或本地路径 - tf 在两个方向上都可以很好地解析它们

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-11-08
    • 1970-01-01
    • 1970-01-01
    • 2012-11-04
    • 1970-01-01
    • 2021-11-01
    • 2020-03-16
    相关资源
    最近更新 更多