如何使用TortoiseSVN创建旧版本的分支?

28

我有一个代码库,其中在第1个版本中添加了trunk、branches和tags文件夹。源代码保存在trunk中。发生了第7个版本,开发一直持续到第16个版本。现在我需要继续在第7个版本上工作,所以我想创建一个基于第7个版本的分支。

以下是我的操作步骤:使用TortoiseSVN,在代码库浏览器中选择trunk,打开“显示记录”,选择第7个版本并右键单击“从版本创建分支/标记”。复制(分支/标记)对话框出现,FROM-URL设置为trunk,我将.../branches/new_branch_name输入为To-URL。“特定版本在代码库中”被选中并设置为7。

现在我收到一个错误,指出“路径...../trunk在第7个版本中不存在”。但是,trunk在第1个版本中肯定已经创建了,如果我查看“显示记录”对话框中第7个版本的更改文件,则可以看到该文件已在trunk中添加/修改。

我做错了什么?


代码库中存在分支吗? - Christopher
是的,它确实如此。也是在版本1中创建的。 - Holgerwa
4个回答

51
  • 打开代码库浏览器。
  • 前往代码库的根目录。
  • 点击“修订”按钮(标有“HEAD”),并从对话框中选择需要的修订版本。
  • 右键拖动“主干”目录到“分支”目录,并选择“复制并重命名该项到此处”。
  • 输入新目录的名称。
  • 编写一个日志消息。

1
您可以右键单击项目,选择“复制到”,然后输入目标路径,而不是右键拖放。其他步骤如描述。 - sync
如果旧版本中的目标文件夹不存在,则此方法将无法正常工作。对于这种情况,请使用另一个答案中详细介绍的“显示日志”方法。 - Andy

32

在此输入图片描述

  1. 打开仓库浏览器
  2. 右键单击主干(trunk)
  3. 选择“显示日志”
  4. 右键单击要从哪个版本分支的修订版本
  5. 选择“从该修订版本创建分支/标记”
  6. 设置您的目标路径(例如branches/我的分支)

5
就像截图一样。价值千言万语。 - azalea
没错,一张图片胜过千言万语,而我们想要的确切图片更是价值连城。再次感谢Luis Perez。 - Nikhil Das Nomula

9

打开“显示日志”对话框,右键单击日志条目以打开“创建标签/分支”对话框。


这是比被接受的答案更好的解决方案,因为如果您开始浏览整个旧版本的存储库,则要复制/重命名的标记结构可能不存在。 - HughHughTeotl

2
我找到了一个解决方案:
  • 查看旧版本
  • 从您的工作副本创建一个分支
看起来这必须在工作副本中完成,而不能直接在存储库(浏览器)中完成。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接