0

我们有一个 SVN 服务器,其文件夹结构如下:

/svn/CompanyName/Trunk/项目

其中公司名称是项目,所有内容都被签入,所有内容都在主干中,每个项目都有一个文件夹......在某些情况下,我们的项目后面有一个 v2 或 v3......这是设置了大约 5 或6年前,我去年接受了它......

我升级计划的一部分是移动东西,所以我们有以下结构:

/svn/projectname/(主干|标签|分支)/

计划是从项目的最新版本中获取所有文件并将其放入主干,如果有项目的 v2 或 v1,则将它们放在自己的分支中......

到目前为止,我已经弄清楚了如何让 svnadmin dump 和 svndump-filter 工作以获取一个特定的文件夹(所以,svn/companyname/trunk/project1)并得到 2 个测试项目(projectv1 和 projectv2)。现在我需要告诉项目 v1 导入到 project/branch/v1 并告诉项目 v2 导入到 /project/trunk ...

除了直接弄乱转储文件之外,关于如何重命名文件夹并保留历史记录的任何想法?

4

2 回答 2

2

根据权威的SVN 参考调整转储文件是要走的路:

在这一点上,你必须做出决定。您的每个转储文件都将创建一个有效的存储库,但将完全保留原始存储库中的路径。这意味着即使您有一个专门用于您的 calc 项目的存储库,该存储库仍然有一个名为 calc 的顶级目录。如果您希望您的主干、标签和分支目录位于存储库的根目录中,您可能希望编辑转储文件,调整 Node-path 和 Node-copyfrom-path 标头,以便它们不再具有第一个 calc /路径组件。此外,您还需要删除创建 calc 目录的转储数据部分。

于 2012-06-27T11:00:48.613 回答
0

looking around, based on the comment @malenkiy_scot made about editing the file, i found an article on the openSUSE lizards site about merging SVN Repositories. this seems to do what i need it to do, including the renaming of folders, merging of dump files, etc...

于 2012-06-27T16:01:24.600 回答