两个CVS项目合并为一个SVN项目
我有两个 CVS 项目,我在 Eclipse 中维护它们。我签出第一个项目,对于第二个项目,我使用“在现有项目中签出”选项,因此我能够将两个 CVS 项目维护到一个 Eclipse 项目中。这样做我可以用相同的标签等来标记两个项目。
要知道,现在已经到了开始使用 SVN 的时候了。我能够创建两个单独的 CVS 转储文件,当我使用 svnadmin 将其加载到 SVN 存储库时,我无法保留 CVS 中的结构!
因此,当我将两个转储分别导入 SVN 时,我得到以下结构:
ProjA - 分支器 标签 主干
项目B 分支 标签 trunk
在 CVS 中,我能够将 ProjB 作为 ProjA trunk 的子文件夹!
有没有办法使用SVN来实现这个?
I have two CVS projects, which I maintain in Eclipse. I check out first project, and for second project I use "checkout in existing project" option, so I'm able to maintain two CVS projects into one Eclipse project. Doing this I'm able to Tag both projects with the same tag,etc.
And know, time has come to start using SVN. I was able to create two separate CVS dump files, and when I used svnadmin to load then into SVN repository, I wasn't able to keep the structure I had in CVS!
So, when i import both dump seperatly into SVN I get the following structure:
ProjA -
brancher
tags
trunk
ProjB
bracnches
tags
trunk
In CVS I was able to have ProjB as a child folder of the ProjA trunk!
Is there any way to implement this using SVN?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
项目的 Subversion 概念是“将其作为一个单元进行标记和分支”。同时标记或分支单独的项目很麻烦,无论它们是位于单独的 Subversion 存储库中还是单个存储库中的子项目。我熟悉的其他现代 VCS 也有同样的局限性。
所以我想问题是:如果您想同时标记或分支这些“项目”,它们真的是单独的项目,还是应该将它们视为单个“主”项目中的子目录?如果它们是单个项目的一部分,那么同时标记或分支它们就很简单,尽管单独标记或分支它们当然会变得更加麻烦。
我建议遵循以下经验法则:项目是将与单个版本号一起发布的文件集。如果您的“项目”通常会在单个版本号下发布,那么请将它们视为单个项目的子目录。如果它们将使用单独的版本号单独发布,则将它们视为单独的独立项目。
The Subversion concept of a project is "that which you tag and branch as a unit". It is cumbersome to tag or branch separate projects at the same time, regardless of whether they are in separate Subversion repositories or are subprojects within a single repository. Other modern VCSs with which I am familiar have the same limitation.
So I guess the question is: if you want to tag or branch these "projects" at the same time, are they really separate projects, or should you rather consider them subdirectories within a single "master" project? If they are parts of a single project, then it is trivial to tag or branch them at the same time, though then of course it becomes more cumbersome to tag or branch them separately.
I suggest the following rule of thumb: a project is the set of files that will be released together with a single version number. If your "projects" will usually be released under a single version number, then treat them as subdirectories of a single project. If they will be released separately using separate version numbers, then treat them as separate, independent projects.
如果这些是真正独立的项目,您可以做的一件事是使用 svn: externals,这将允许您使一个存储库引用另一个存储库(并自动从中下载内容)。
One thing you can do, if these are truly separate projects, is to use svn:externals, which will allow you to make one of the repositories reference (and automatically download content from) the other repository.
在 SVN 中,您只需将文件和文件夹移动到您想要放置的位置即可。
查找 svn move 命令。
In SVN, you can just move files and folders to where you want to have them.
Look up the
svn move
command.