将更改提交到与当前使用 subversion 签出的分支不同的分支

我一直在处理从开发线检出的代码,发现所做的更改可能会破坏更改,需要在提交到主开发树之前移动到实验分支。但是,我没有检查实验分支,我不想失去已经做出的更改。

是否有办法将工作文件夹中的更改提交到不同于最初签出的分支?

59802 次浏览

你可以直接从你的工作目录创建一个新的分支,然后把工作目录切换到那个分支。

命令是 svn copysvn switch

您应该首先从已知的 sourceURL创建一个分支(这将是您在问题中提到的“开发线”) :

svn copy sourceURL branchURL

然后,切换到那个分支:

svn switch branchURL

And commit your changes:

svn commit

你可以在 TortoiseSVN 上这样做:

  • 右键单击要分支的更改所在的目录。它必须不是存储库的根,以这种方式进行复制较少;
  • 选择 TortoiseSVN-> 「 分支/标签..。」 ;
  • 设置 到网址: “ svn://host/itory/FooBar/Branch/FooBarBranchName”;
  • Make sure [*] 选择工作副本. This will ensure the changes are commited;
  • 日志消息 : “用苍蝇做实验:)”;
  • 可选项: Tick [ * ] 将工作副本切换到新的分支/标记。如果您计划继续处理新的分支,这将非常有用。不过你也可以以后再换。
  • 试着找到 好的按钮。提示: 它在窗口中心的下部。

好好享受吧!