从特定标签创建SVN分支并合并到主干

9

最近我们迁移到了 SVN。

我这里有两个问题:

  1. 我们发布了一个版本并创建了标签 TAG1。一周后出现了生产问题,生产代码库是基于 TAG1 的,在 trunk 上做了几个我们不想推到生产的更改,所以最好的方法是从 TAG1 获取代码并进行更改,我们已经从标签中导出了数据,但无法提交,也不想提交到该标签,需要在发布后创建另一个基于此分支的标签(TAG2),然后最终合并到 Trunk。合并到 Trunk 不是问题,问题在于如何从标记的代码创建一个分支并提交更改?

  2. 我们每两个月发布一个版本,在 trunk 上直接进行所有这些更改,在发布后我们创建一个标签,然后继续进行下一个版本的开发。另一方面,我们将开始一个新项目 XYZ,该项目将在年底发布(日期尚未确定),在这里,这个分支需要从之前的标签而不是从 trunk 创建,因为已经对即将发布的版本在 trunk 上进行了一些更改,我们该怎么做?

谢谢 KV

2个回答

19
svn copy your.repo.URL/tags/your-tag-name your.repo.URL/branches/your-new-branch-name -m "message"

然后进行工作

svn checkout your.repo.URL/branches/your-new-branch-name

6

感谢大家的快速回复。现在我遇到了以下错误:“svn无法使用外部编辑器获取日志消息,请考虑设置$svn_editor环境变量”。如果我尝试使用“-m”参数和消息,会得到以下错误:svn:提交被预提交挂钩(退出代码1)阻止,输出为... - KVB
你是怎么创建这个标签的?对于分支也做同样的操作,但需要使用相应的URL。我不知道你的pre-commit钩子是干什么用的。 - JB Nizet
针对错误:“svn 无法使用外部编辑器获取日志消息,请考虑设置 $svn_editor 环境变量”,请执行以下两个命令:1)bash;2)export SVN_EDITOR=nano。 - sean808080
解决外部编辑器问题的替代方法:使用“-m”选项自己提供提交信息,“creating maintenance-TAG1”。 - Gordon Dove

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