【问题标题】:How can I migrate files to another branch without checking them in?如何在不签入的情况下将文件迁移到另一个分支?
【发布时间】:2019-09-25 17:17:30
【问题描述】:

tfpt.exe 从 VS 2017 及以后不再存在。那么如何在不签入的情况下将文件从一个分支移动到另一个分支。假设我不小心在错误的分支中编写了代码,或者我被告知在签入之前将我的更改移动到另一个版本。这种情况一直在发生。如果没有办法做到这一点,那么要么 TFS 坏了,要么我用错了。

这不再有效:

tfpt unshelve /migrate /source:"$/MyProject/DevCurrent/DevMain" /target:"$/MyProject/DevNext/DevMain" "Temp"

请不要将此问题标记为重复,而不确保它确实是重复的。我整天都在研究这个问题,在过去的十年里,有 1500 万种不同的方法可以做到这一点,其中没有一种适用于现代工具。

我需要 TFS 2018 和 Visual Studio 2017 的解决方案。我无法控制这些版本。

【问题讨论】:

标签: tfs tfvc tfs-power-tools


【解决方案1】:

在VS2019遇到同样问题后,我最好的解决方法是将修改后的源文件夹复制/粘贴到分支目标文件夹并使用

tf reconcile /promote

检测所有添加或更改的文件。

【讨论】:

    【解决方案2】:

    这种情况经常发生。

    为什么?它不应该一直发生。检查你在哪里,然后开始编码。

    我整天都在研究这个

    所以我猜你看到了这个question,如果那里的答案不适合你,让我建议一个简单的方法来做到这一点,但它是手动方式,而不仅仅是运行命令:

    1) 你更改了一个文件,然后突然注意到你在错误的分支中。

    2) 您不想将更改签入到错误的分支。

    3) 过去你把文件放在 Shelveset 然后tfpt ...,但现在这个命令已经不存在了。

    3) 没问题。转到您的本地文件夹,复制文件(包含更改)。

    4) 转到正确的分支本地文件夹并将文件粘贴到那里。

    5) 转到 Pending Changes 并“撤消”错误分支中的更改。

    6) 只签入正确分支中的文件。

    【讨论】:

    • 我会检查我在哪里。但是当你在二十个项目中有四个环境时,有时会犯错误。有时,在更改进行到一半时,我被告知将其移至不同的环境。这一直发生在我身上。
    • 我整天都在研究这个。我一直在拔头发。这不是一个解决方案。我不妨在另一个分支中手动重做更改。
    • 好的 :( 我想帮忙。我不认为你有其他选择。如果你能找到一个请更新 :) 谢谢!
    • 我会的。感谢您提供帮助。
    猜你喜欢
    • 2022-01-15
    • 2021-09-06
    • 1970-01-01
    • 1970-01-01
    • 2011-12-17
    • 1970-01-01
    • 1970-01-01
    • 2011-11-05
    相关资源
    最近更新 更多