cvs2svn 2.4.0 - 错误传递16 svnadmin

时间:2013-09-17 16:50:46

标签: cvs2svn

下午好,

在Linux机器上使用版本2.4.0-dev,我正在尝试将CVS项目迁移到SNV。我有一些符号问题,我根据符号信息创建了一个提示规则文件。

现在我当前的错误。 CVS项目称为包。我想在目录结构svnrepos / sw / package下将其迁移到SVN。 svnrepos / sw已经存在(以及svnrepos下的其他项目。

在我的选项文件(从cvs2svn-example.options创建)中,我正在使用

ctx.output_option = ExistingRepositoryOutputOption(
    r'/var/svn-test', # Path to repository
    #author_transforms=author_transforms,
    )
...
run_options.add_project(
    r'cvs/package',
    trunk_path='sw/package/trunk',
    branches_path='sw/package/branches',
    tags_path='sw/package/tags',
...

我也试过

run_options.add_project(
    r'cvs/package',
    trunk_path='trunk',
    branches_path='branches',
    tags_path='tags',
    initial_directories=[
        r'sw/package'
        ],

出现同样的错误:

  

-----传递16(OutputPass)-----启动Subversion存储库。启动Subversion r1 / 635启动Subversion r2 / 635启动   Subversion r3 / 635错误:svnadmin失败,输出如下   加载转储文件时:svnadmin:E160020:文件已存在:   filesystem'/ var / svn-test / db',事务'48 -1c',路径'sw'

我对如何解决这个问题很感兴趣。

注意: 我的初始测试是使用命令行参数,结果是分别在svnrepos / trunk,svnrepos / branches和svnrepos / tags中创建了trunk,branches和tags。正如我之前所说,我希望这些是在svnrepos / sw / package

提前致谢 丹尼尔

1 个答案:

答案 0 :(得分:0)

我解决了这个问题。基本上,迁移必须完成两个步骤

1.使用cvs2svn生成转储文件。在选项文件中,我使用了以下

# Use this type of output option if you want the output of the
# conversion to be written to a SVN dumpfile instead of committing
# them into an actual repository.  The author_transforms option is as
# described above:
ctx.output_option = DumpfileOutputOption(
#    dumpfile_path=r'/path/to/cvs2svn-dump', # Name of dumpfile to create
    dumpfile_path='packageDump',
    #author_transforms=author_transforms,
    )

请注意,trunk,tags和branches的路径还包含对 package 的引用。

run_options.add_project(
    r'cvs/package',
    trunk_path='package/trunk',
    branches_path='package/branches',
    tags_path='package/tags',

正如我在原始消息中提到的,有一些符号问题,我创建了一个符号提示文件,其中svn-path指向我所需的目录。例如

0 tag_pk_1_0_0 tag package/tags/pk_1_0_0 .trunk.

2:使用 svnadmin load 将生成的转储文件加载到svn

svnadmin load --parent-dir sw /var/svn-test < packageDump