2011-10-24 18 views
4

我想使用tfpt将shelveset从源分支迁移到目标分支,但它似乎没有做任何事情...不是我所期望的更多...但任何人都知道什么是错的?我正确地按照指示我想......tfpt迁移为TFS不会做任何事

我有:

tfpt unshelve "DbMigrations" /migrate /source:$/TeamProject/Main /target:$/TeamProject/Releases/7.20 

回答

4

会发生什么事,你运行该命令后?您需要在迁移之前已经设置了几件事情:

  • 涵盖的源和目标分支都工作空间。
  • 您需要在源文件夹内运行该命令。

运行该命令后,应该要求您将原始货架集的更改合并到目标分支中,并解决任何冲突,最终将客户端上的变更集挂起。除非您将变更集检入TFS本身,否则服务器上没有任何内容。

+1

您的观点 - 是的,我已经完成了这两个。当提示出现合并我的更改时,它显示文件夹路径中的主分支,而不是发布分支。如果我解决了所有冲突,我会看到主分支的待定更改,而不是分支。 – Jeff

+4

只是一个快速的评论,我有同样的事情发生在我身上(更改未保存到/源),直到我在/源参数中修复了我的愚蠢输入错误。该实用程序并没有告诉它它无法找到指定的路径,它只是不支持它的来源。 –

+0

同样发生在我身上。我有一个空格的路径,需要在源/目标周围包含引号,如下所示:'/ target:“$ \ Has Spaces \ Somewhere”'。 – Ocelot20

1

我遇到了同样的问题,我无法通过指定shelveset名称来实现它。但是,我发现如果您完全删除搁架组的名称,TFS将弹出一个窗口,其中包含可供选择的搁架组选择列表。按照常规选择所需的shelveset并执行所有其他合并操作。

例如:C:[映射的工作空间目标路径]> TFPT取消搁置/迁移/源: “$/SOURCEPATH”/目标: “$/TARGETPATH”

0

您需要使用TFS服务器上的分支路径,而不是你的本地机器。要找到路径,请在Visual Studio中转到源代码管理资源管理器,右键单击分支,高级>属性,并且需要分支名称,而不是本地路径。如果路径中有空格,请用双引号将其包装。