代码之家  ›  专栏  ›  技术社区  ›  durumdara

VisualSVN-将修订合并为一个

  •  0
  • durumdara  · 技术社区  · 15 年前

    我们有一些提供visualvn免费服务的服务器。因为我们想在上面腾出一些空间,我决定合并一些旧项目的修订。它们不再使用了(旧版本)。

    我创建了一个名为“test”的存储库项目,以及一些根据需要调用svnadmin的python工具。

    我提交了一个文本文件,其中有5个版本。

    E:\Repository_Saver>dump.py
    c:\Program Files (x86)\VisualSVN Server\bin\svnadmin.exe dump e:\Repositories\te
    st -r 5 >E:\Repository_Saver\test.dump
    * Dumped revision 5.
    

    还原到此项目(不删除它)。我有个错误:

    E:\Repository_Saver>restore.py
    c:\Program Files (x86)\VisualSVN Server\bin\svnadmin.exe load e:\Repositories\te
    st --ignore-uuid
    <<< Started new transaction, based on original revision 5
         * adding path : trunk ...svnadmin: File already exists: filesystem 'e:\Repo
    sitories\test\db', transaction '5-6', path 'trunk'
    

    E:\Repository_Saver>restore.py
    c:\Program Files (x86)\VisualSVN Server\bin\svnadmin.exe load e:\Repositories\te
    st2vs --ignore-uuid
    <<< Started new transaction, based on original revision 5
         * adding path : trunk ...svnadmin: File already exists: filesystem 'e:\Repo
    sitories\test2vs\db', transaction '1-1', path 'trunk'
    

    我试图还原到一个不存在的项目目录:

    E:\Repository_Saver>restore.py
    c:\Program Files (x86)\VisualSVN Server\bin\svnadmin.exe load e:\Repositories\te
    st2notexists --ignore-uuid
    svnadmin: Can't open file 'e:\Repositories\test2notexists\format': A rendszer ne
    m találja a megadott elérési utat.
    (The system not found the path)
    

    E:\Repository_Saver>restore.py
    c:\Program Files (x86)\VisualSVN Server\bin\svnadmin.exe load --ignore-uuid e:\R
    epositories\test2
    <<< Started new transaction, based on original revision 5
         * adding path : trunk ... done.
         * adding path : trunk/akarmi.txt ...svnadmin: Checksum mismatch, file '/tru
    nk/akarmi.txt':
       expected:  c8f86f8733e4cb120d475cfd118bd93a
         actual:  94bed0edc96af1cc6f87cb19ec81ef9e
    

    使用强制:

    E:\Repository_Saver>restore.py
    c:\Program Files (x86)\VisualSVN Server\bin\svnadmin.exe load --force-uuid e:\Re
    positories\test2
    <<< Started new transaction, based on original revision 5
         * adding path : trunk ... done.
         * adding path : trunk/akarmi.txt ...svnadmin: Checksum mismatch, file '/tru
    nk/akarmi.txt':
       expected:  c8f86f8733e4cb120d475cfd118bd93a
         actual:  94bed0edc96af1cc6f87cb19ec81ef9e
    

    此本地计算机是Win7/x64,不含VisualSVN。

    谢谢你的每一个想法,帮助,链接,尝试。。。

    dd公司

    1 回复  |  直到 15 年前
        1
  •  0
  •   durumdara    15 年前

    我想我找到了解决办法。我将create/dump/load的代码简化为:

    --创建--

    "c:\Program Files\VisualSVN Server\bin\svnadmin.exe" create %1
    

    "c:\Program Files\VisualSVN Server\bin\svnadmin.exe" dump -r%2 %1 >%1.dump
    

    --加载--

    "c:\Program Files\VisualSVN Server\bin\svnadmin.exe" load %1 <%2.dump
    

    用法:

    新的合并回购。

    create project_merged
    

    dump project_original 39 
    

    将转储文件加载到新的repos中。

    load project_merged project_original
    

    每次我犯了这个错误,我打开它(看内容)。

    GUI存储库“creating”无法使用load。VisualSVN正在制作一些plus文件。。。:-(

    谢谢:

    推荐文章