我在一个结构严重的svn repo中有一个分支,需要被剥离并移动到另一个svn存储库.(我正试图清理一些).
如果我做了一个svn log而不是停止复制/重命名,我可以看到我关心的所有3427个提交.除了编写一些主要脚本之外,有没有办法将修订版转出?
我会按照这个问题的建议,但这个分支已被移动到所有地方,我也想保留这些动作.
我在这里阅读了一些关于如何使用 svnadmin/dump 等操作的问题/答案。实际上我没有正确理解我应该做什么。
我想我必须使用 svnadmin 从 Google 代码库中进行某种转储,但是我从哪里获得这个 svnadmin?
我在 WXP 上使用 TortoiseSVN 1.6.3 并且我的所有 C 文件夹中都没有 svnadmin.exe 命令,我应该在哪里下载这些应用程序?
谢谢!
因此,在尝试设置SVN服务器时,我设法使我们的repositories文件夹成为单个存储库,之后创建的每个存储库都被视为该存储库的一部分.现在我有一个生活在一个存储库中的多个项目需要分开.有没有办法将这些文件夹分成不同的存储库?
编辑:好像这可以用做svnadmin dump和svnadmin load,但我无法弄清楚如何在存储库中转储文件夹中,而不是倾倒了整个仓库.
显然,其中一个旧修订版已从svn存储库中消失:
svn checkout http... myrepo
svn: REPORT of '/svn/myrepo/!svn/vcc/default': Could not read chunk size: connection was closed by server (http://localhost)
Run Code Online (Sandbox Code Playgroud)
$ svnadmin verify myrepo
* Verified revision 0.
...
svnadmin: No such revision 262
$ svn log -v -r 262
svn: No such revision 262
$ ll /var/SVN/myrepo/db/revs/0/
...
-rw-r--r-- 1 www-data www-data 27289777 2010-10-21 22:21 260
-rw-r--r-- 1 www-data www-data 4727180 2010-11-12 18:51 261
-rw-r--r-- 1 www-data www-data 2180586 2010-11-14 20:33 263
...
Run Code Online (Sandbox Code Playgroud)
搜索该问题时说“从备份还原”,但是我所有的3个备份都缺少此修订版,因此它一定已经进行了一段时间。我只有在无法提交特定文件时才注意到它。我有一个当前的工作副本。除了从头开始,我还能做什么?
我遇到了一个 svn 存储库的问题,该存储库到目前为止一直运行良好。
我收到错误
svnadmin: Can't set position pointer in file 'repository/db/revs/0/783': Invalid argument
Run Code Online (Sandbox Code Playgroud)
例如当我跑步时
svnadmin verify
Run Code Online (Sandbox Code Playgroud)
其他一般症状包括无法签出、更新、提交等。
非常感谢任何帮助
谢谢!彼得
我们在工作中一直在做一些存储库跳转,并且作为一个kludge,我正在尝试将一些旧历史重写到我们将要使用的新存储库中.如何将SVN转储文件重新加载到现有目录中库?
我已经做了一个svnadmin dump我要移动的旧树干和树枝.我已经处理它们以从dumpfile中的路径中删除trunk和branches/myBranch前缀.我也装了一个newRepo/fromOldRepo_ref/development.
$ svn copy --parents file://`pwd`/newRepo/fromOldRepo_ref/development@172 file://`pwd`/newRepo/fromOldRepo_ref/features/2169 -m "Branch to 2169 reference branch"
Committed revision 182.
$ svnadmin load --parent-dir fromOldRepo_ref/features/2169 newRepo < dumpfile
<<< Started new transaction, based on original revision 2171
svnadmin: E160020: File already exists: filesystem 'newRepo/db', transaction '182-53', path 'fromOldRepo/features/2169'
* adding path : fromOldRepo/features/2169 ...
Run Code Online (Sandbox Code Playgroud)
我然后做了上述分支newRepo/fromOldRepo_ref/development@172来newRepo/fromOldRepo_ref/features/2169.之后,我想2169通过加载另一个转储文件来创建更多提交,但它如上所示错误.这可以解决吗?
展望未来,我知道我们的程序,工具和实践还有许多其他真正的修复方法可以避免我将来想要这样做.但目前,这没有帮助.:]
我有一个很久以前创建的工作存储库,现在我正在尝试设置另一个,但我遇到了很大的困难。这是我为创建第二个所做的工作;我希望这能奏效:
U:\repos>svnadmin create repo1
U:\repos>echo password-db = passwd >> repo1/conf/svnserve.conf
U:\repos>echo auth-access = write >> repo1/conf/svnserve.conf
U:\repos>echo user1 = user >> repo1/conf/passwd
U:\repos>cd repo1
U:\repos\repo1>svnserve -d
Run Code Online (Sandbox Code Playgroud)
而在另一个终端:
U:\>mkdir wc
U:\>cd wc
U:\wc>svn co svn://localhost/repo1
svn: E210005: Unable to connect to a repository at URL 'svn://localhost/repo1'
svn: E210005: No repository found in 'svn://localhost/repo1'
U:\wc>
Run Code Online (Sandbox Code Playgroud)
另一个存储库以相同的方式配置在u:\repo。这是怎么回事?
我在工作的企业中将大型存储库放入SVN服务器中。我每天需要验证此存储库的完整性,以检查SGBD的某些不稳定或破裂。
我正在使用提示命令行“ svnadmin path_to_my_repository”来验证我的存储库的完整性。
问题是:我的存储库太大(约28GB,28.029版本),此操作需要大量时间才能完成。
问题是:我如何优化此操作以花费比实际更少的时间?还是我可以用其他方法用更少的时间来验证存储库的完整性?
一些额外的信息:
我有一个拥有多个项目的大型单一存储库.我使用svnadminfilter命令从一个完整的存储库转储中过滤掉了一些项目.
我使用--drop-empty-revsswitch(并且没有--renumber-revsswitch)转储了完整的存储库,它删除了空的修订版并特别保留了相关的修订版本.现在,在将转储重新加载到新位置的新存储库时,它会从1开始重新编号这些修订,但我想保留这些修订.
svnadmin加载是否还有可用的开关?
我有一个巨大的 SVN 存储库,每周需要转储一次。存储库的大小约为66 GB;在命令“svnadmin dump”之后,大小约为 184 GB。
是否可以减小转储的大小,以便获得更安全的备份过程?
我读到其他人使用svnsync,但我的目标是带出数据,所以目前最好的解决方案是“转储+钩子和授权数据的副本”。
其他人如何管理庞大的 SVN 存储库的备份?
非常感谢。
svn ×10
svnadmin ×10
dump ×1
fsfs ×1
migration ×1
optimization ×1
size ×1
svn-checkout ×1
svndump ×1
svnserve ×1
svnsync ×1
tortoisesvn ×1
verify ×1