TFS搁架从一个分支迁移到另一个分支

问题描述:

我必须将在一个分支中创建的shelveset称为“开发”,转移到另一个分支称为“发行版”。 ,以便我可以直接合并shelveset然后释放为开发分支创建的。TFS搁架从一个分支迁移到另一个分支

我用的命令是:

tfpt unshelve "shelveset name" /migrate /source:"$...development" /target:"$...Release" 

其显示的错误:

unable to determine the workspace 
+0

对我来说,这是我有两个Powertools版本安装。我不得不卸载旧的,所以只剩下最新的一个(2012)。此外powertools版本不参考TFS版本(因为我们正在使用2010) –

我猜你的问题是:我怎样才能没有这个错误发生所做的工作?。 在这种情况下,请确保两个分支都映射到本地系统,并且在您的最新版本的源代码中获得了最新版本。

这应该防止发生错误,因为路径都包含有关用于映射的工作空间的信息。

从您启动命令的位置开始的位置必须来自您的工作区内。 例如c:\ workspaces \ project \ development如果您的源所在的位置。

不知道这会解决你的问题(或者你可能会意识到这一点),但这里是链接,取消搁置命令的详细信息,并记录指定的源/目标路径

Unshelve command basics

我提到的几点今天遇到同样的问题。 经过检查下面的项目我得到它的工作:

  • 只有一个Powertools安装。
  • 从开发人员命令提示符运行命令
  • 从映射到您的目标工作区的文件夹运行该命令。

我不得不卸载v。2010,因此只有v。2012保留。版本号似乎没有引用您的TFS版本。
要检查您是否位于正确的文件夹,您可以运行tf工作区。
在弹出的窗口中找到要定位的工作空间并在列本地文件夹中签入。确保你在该文件夹中。

+0

我同意。我已经阅读了许多文章,并尝试了各种修正,但我确信它是现有的甚至存在于您的系统上的多个现有版本的TFPT(无论您如何引用它们)导致发生此错误,因此我强烈怀疑这是Power Tools代码中的一个错误。 – paulyphonic

我遇到了和鲍里斯·卡伦斯一​​样的问题。我已经安装了VS2012和VS2013的TF电动工具。当在命令promt中运行tfpt.exe命令时,我总是收到错误消息“无法确定工作空间”。这是因为我在TFS 2013中使用了VS 2012电动工具。所以我必须更改系统环境变量“TFSPowerToolDir”中Power Tools的路径,以指向VS2013的Power Tools。

您可以找到正在运行的版本号:tfpt.exe /? TF Power Tools version