代码之家  ›  专栏  ›  技术社区  ›  Baldy

在TFS 2010中进行分支并被强制重新下载代码

  •  8
  • Baldy  · 技术社区  · 14 年前

    当我在TFS2010中从主线创建分支时,我必须下载我刚刚分支的所有代码。

    我的笔记本电脑上已经有了最新的主线版本,为什么TFS要求我有效地下载硬盘上已有的内容?

    即使我将主线文件复制到一个文件夹中,并将新的分支映射到这个文件夹,它仍然会执行完全递归的get,并阻塞我们的带宽30分钟左右。

    这似乎是在浪费时间和时间-他们的解决方法/程序我不知道吗?

    2 回复  |  直到 14 年前
        1
  •  9
  •   Jim Lamb    14 年前

    为了更快地在分支之间切换,请 tf get /remap 选项A尝试。来自布莱恩·哈里的博客:

    这是新的 关于tf get的选项 当你想转换你的 从一个分支到另一个分支的工作区 在同一代码库中。你先来 更改工作区映射,然后 发布tf get/remap。因为A 大部分文件分为两个 相关分支机构经常 相同,此命令优化 那个。而不是下载所有 内容,它将只下载 不同的事物 两个分支。我可以减少 一个非常大的工作空间 几分钟到几秒钟。

    请注意,这需要TFS 2008 SP1或更高版本。

        2
  •  0
  •   Robaticus    14 年前

    原因是TFS不知道您下载了分支。“获取”操作实际上会在TFS数据库中放置一条记录,该记录指示工作区中的代码版本。这样,它就知道你是否有最新的。

    我很惊讶一个“得到”要花30多分钟。您的TFS服务器是远程的吗?你得到的二进制文件比你需要的多吗?如果您有远程服务器,您可能需要考虑使用TFS代理来帮助提高性能。虽然它不能解决您所遇到的这个特定问题,但它可能会加速其他开发人员的工作。

    最后一个问题:你为什么分支这么多?虽然我理解在Feature上进行分支的概念,并且它增加了您需要分支的次数,但是它仍然是相对较少发生的。如果这是罕见的,那么,是的,30分钟的下载可能会很烦人,但是你需要问问自己这是否真的是一个问题。