svn - CVS 到 SVN 转换并重组分支

标签 svn cvs

我正在从现有的 CVS 存储库转换为 SVN 存储库。 CVS 存储库的分支很少,我想在转换时重命名分支。

想要的转化是这样的:

CVS branch         SVN branch
HEAD       ->      branches/branchX
branchA    ->      trunk
branchB    ->      branches/branchB
branchC    ->      branches/branchC

即CVS HEAD成为普通分支,CVSbranchA成为SVN主干。

CVS 和 SVN 存储库都将位于同一台 Linux 计算机上。

这怎么能做到呢?

此外,CVS 分支 A 成为 SVN 主干并且忽略所有其他 CVS 分支的转换可能就足够了。

最佳答案

I am especially interested in preserving commit history. If I rename and move branches around in SVN after the conversion, will the history be preserved?

是的。 Subversion 还跟踪目录结构的更改,并且即使文件在树中移动,所有版本历史记录也会保留。

我建议使用 cvs2svn 转换存储库,包括分支和标签。一旦存储库进入 Subversion,您就可以根据需要移动分支和标签。这也保留了实际标签和分支被重命名的历史记录,这在以后的历史上下文中可能会很有趣。

关于svn - CVS 到 SVN 转换并重组分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14373/

相关文章:

repository - 我们应该将 JRE 存储在 CVS/SVN 中吗?

jenkins - 带有逗号v的cvs文件名

python - 使用 svndumpfilter2 将项目提取到 svn 中自己的存储库(python 断言错误)

svn - 使用 Release 插件时禁用 Hudson 中的证书检查

java - 如何在现有的jar中注入(inject)编译类?

unix - CVS 更新 - 移走文件

cvs - 'cvs logout' 怎么不起作用?

apache - 从服务器复制的 Subversion 目录中获取原始文件

svn - 在 Netbeans 6.9.1 中将 CVS 存储库转换为 SVN

svn - 如何使用 groovy 从 svn 标签获取修订号