Tfs 来自本地工作区的分支
我正在开发团队项目,突然意识到我已经做了太多的更改,所以我需要创建分支 我从来没有在TFS中使用过分支,当我看到“工作区版本”中的“分支”时,我想这就是我所需要的。但是这个选项并不像我想象的那样起作用 如何从“项目的本地副本”创建新分支,并包含所有本地更改”?我上面提到的选项创建了类似于branch from的东西…我不知道具体是什么,但我肯定知道,这不是从我的本地版本中进行的所有更改。正如我注意到的,生成的分支没有我添加的文件和项目。我要做的是:Tfs 来自本地工作区的分支,tfs,version-control,Tfs,Version Control,我正在开发团队项目,突然意识到我已经做了太多的更改,所以我需要创建分支 我从来没有在TFS中使用过分支,当我看到“工作区版本”中的“分支”时,我想这就是我所需要的。但是这个选项并不像我想象的那样起作用 如何从“项目的本地副本”创建新分支,并包含所有本地更改”?我上面提到的选项创建了类似于branch from的东西…我不知道具体是什么,但我肯定知道,这不是从我的本地版本中进行的所有更改。正如我注意到的,生成的分支没有我添加的文件和项目。我要做的是: 搁置你的工作 从相应的源文件夹进行分支 使用
- 搁置你的工作
- 从相应的源文件夹进行分支
- 使用TFS电动工具取消搁置到其他位置
- 登记入住
这样,您就得到了一个干净的分支,并记录了您所做的更改。Robaticus的回答是正确的,但我想补充一些我在别处没有看到的细节。我只是不得不这样做,它表现得好像它在工作,但它不是。它会假装自动合并或复制,但没有创建任何文件,也没有在新分支中进行签出。应引发错误,但未显示任何错误 事实证明,如果路径没有空格,则源和目标周围的引号是可选的,但如果存在空格,则引号是必需的 以下是一个模板:
tfpt unshelve MyShelfsetName /migrate "/source:$/MyPath/My Path with spaces/MyBranch" "/target:$/MyPath/My Path with spaces/MyOtherBranch"
tfpt unshelve /migrate "MyShelveset" "/source:$/project/trunk" "/target:$/project/branch"
这将有助于您避免我在尝试按照原始说明操作时遇到的一些问题。您可能需要尝试以下方法: 我假设您使用的是EclipseIDE和TFS插件。您需要是项目的TFS管理员
干杯 哇。奇怪的巧合。我也觉得有必要这么做。TFS 2010适用于我。如果消息“无法确定工作区”,则取消搁置的命令类似-->tfpt unshelve/migrate MyShelveset/source:$\project\trunk/target:$\project\branch对我有效:tfpt unshelve/migrate MyShelveset”/source:$/project/trunk”“/target:$/project/branch”是在执行tfpt命令后打印的,可能是因为其中一个当前不在本地目标文件夹(cd)中。我还必须从源分支和目标分支中删除双引号,否则我得到“的服务器路径组件/source:serverpath不是有效的服务器路径。”。我还得到了“未找到搁置集”,因为搁置集名称周围有双引号。我希望这对某人有所帮助我很久以前就换用GIT了,我不会再回到TFS了,但是thx的建议,它可能对某人有用。