...如果有人试图在某个时间内提交,会发生什么svnadmin dump REPOS_PATH?
该颠覆的书并没有说明任何东西.
我需要获得一个大型(~8gb)svn存储库的备份转储.我当前的方法涉及使用svnadmin dump文件,然后使用7-Zip压缩和拆分文件.
> svnadmin dump c:\path\to\myrepo > c:\svndump.svn
> 7z svndump.svn svndump.7z // or whatever the correct syntax is
Run Code Online (Sandbox Code Playgroud)
我想知道是否有办法在这里跳过中间人,并通过使用管道或其他东西获得svn转储数据一次性压缩?这可能吗?语法是什么?
我正在尝试将旧存储库(让我们称之为myOldRepo)迁移到新的存储库(myNewRepo).
我有一个旧回购的svndump , myOldRepo.dump. 我已经检查了我的新存储库myNewRepo.两者都在同一目录中.我正在尝试使用以下命令将旧的repo转储加载到新的repo中:
svnadmin load ./myNewRepo < ./myOldRepo.svndump
Run Code Online (Sandbox Code Playgroud)
这会出现以下错误:
svnadmin: Can't open file 'myNewRepo/format': No such file or directory
Run Code Online (Sandbox Code Playgroud)
我已经使用SVN很长一段时间了,我还没有format在我的任何存储库中看到过一个文件.这是什么format那是myNewRepo预期?
我还尝试在myNewRepo目录中创建一个空format文件(touch format).然后,当我执行svnadmin load命令时,我得到以下内容:
svnadmin: Can't read file 'myNewRepo/format': End of file found
Run Code Online (Sandbox Code Playgroud)
svn version-control svnadmin version-control-migration svndump
我必须处理两个存储库,并希望在保留历史记录的同时在两个存储库之间移动一个带有代码的目录.
我在这里读了几个问题,但我仍然不确定要走哪条路.我们的存储库是巨大的(文件(orkingcopy)不包括修订版>几GB),因为所有内容都已签入(代码+设计+ ...).
我到目前为止看到的解决方案是:
是否有其他解决方案,方法,或者我错过了其中一个解决方案?
我正在尝试使用reposurgeon将svn repo转换为git .
这是我做的(有一个具有svn名称的reo.map文件 - > git名称映射):
svnadmin dump /home/subversion > repo.svn
reposurgeon "verbose 1" "repo.svn" "authors read" "write repo.fi"
Run Code Online (Sandbox Code Playgroud)
reposurgeon运行了好几个小时(大量交换,因为它是一个12GB的转储文件),一切看起来都不错.这是我得到的输出:
reposurgeon: verbose 1
reposurgeon: from repo.svn...copynodes+filemaps+copysets+commits+branches+parents+root+branchlinks+svn-mergeinfo+tagifying+tagify-empty+polishing+canonicalizing+resets+debubbling+renumbering+14163 revisions (1/s)...(9810.18 sec) done.
reposurgeon: r13: deleting parentless zero-op commit.
.
.
.
reposurgeon: r13726: deleting parentless zero-op commit.
2012-12-24T01:16:23Z * repo.svn
Run Code Online (Sandbox Code Playgroud)
此时reposurgeon就坐了.我不知道在这一点上在哪里寻找解决方案,因为它从来没有给我一个错误信息.任何建议都是最受欢迎的.
有人可以开导我这个......
当我取消注释/ etc/subversion/config中的行store-auth-creds = no,并且当我创建一个新的repo时,我看到以下错误:
svnadmin: /etc/subversion/config:37: Option Expected
Run Code Online (Sandbox Code Playgroud)
我明白37行是指向该store-auth-creds = no选项,但svnadmin现在期望什么选项?
一种新的SVN .. =)我正在使用Ubuntu 9.1作为我的SVN.
我的存储库是2.5G.转储通道svnadmin dump myrepos > dumpfile是5G.但当我进行转储时,如
svnadmin dump myrepos -r 23785 > rev-23785.dumpfile23785是最年轻的版本,转储超过15G,此时我停止转储.
当只为一个版本请求转储时,为什么结果远大于整个转储?
我正在将SVN存储库从Windows机器(Windows 7)移动到Linux机器(Ubuntu 13).我在Windows上转储repo svnadmin dump并将文件复制到Linux机器上.现在我正在跑步
svnadmin load dest-folder < dumpfile
Run Code Online (Sandbox Code Playgroud)
终端响应
'vnadmin: E140001: Malformed dumpfile header 'SVN-fs-dump-format-version: 2
Run Code Online (Sandbox Code Playgroud)
我怀疑我的字符编码存在问题(Windows与Unix),基于单引号从行的末尾开始到应的开头.但我尝试在Notepad ++中转换字符编码,我只收到不同的错误.
当我以UTF-8编码时,会出现上述错误.
转换为"无BOM的UTF-8"或"ANSI"时:
' into a number04: Could not convert ' 2
Run Code Online (Sandbox Code Playgroud)
转换为"UCS-2 Big Endian"或"UCS-2 Little Endian"时:
svnadmin: E140001: Malformed dumpfile header '?\254?\255'
Run Code Online (Sandbox Code Playgroud)
我对字符编码一无所知,所以我不知道下一步该转向何处.或者也许这是我的转储或回购的问题,但直到现在我还没有任何SVN问题.
我们将一个大的svn存储库(100k + revs)拆分成几个较小的存储库.我使用svndumpfilter(v1.7.2)拆分转储和svndumptool/sed来过滤大转储.
一切正常,除了我的过滤转储中仍然有一些"填充修订版",即使我使用了"drop-empty-revs"选项.
当我们有不到10%的无用"填充修订版"时,这不是太成问题,但有时,新的repo只有几百个真正的修订版本埋没在30k +"填充修订版"中.
这是我使用的命令和包含的修订
svndumpfilter --drop-empty-revs --renumber-revs include /MyProj < MassiveOldRepo.dump > NewAllCleanRepo.dump
------------------------------------------------------------------------
r3453 | (no author) | 2005-09-29 17:27:54 +0200 (jeu., 29 sept. 2005) | 1 line
This is an empty revision for padding.
------------------------------------------------------------------------
r3454 | (no author) | 2005-09-29 17:28:27 +0200 (jeu., 29 sept. 2005) | 1 line
This is an empty revision for padding.
------------------------------------------------------------------------
Run Code Online (Sandbox Code Playgroud)
我想知道是否有一种方法不包括这些修订,因为我正在过滤转储(没有手动从过滤转储中删除它们).
编辑:我想补充说,我使用了svndumpfilter一些空的修订版,第一个"真正的"修订版之前的版本和最后一个"真正的"版本之后的版本.
svn ×10
svnadmin ×10
svndump ×2
backup ×1
command-line ×1
dump ×1
git ×1
linux ×1
repository ×1
size ×1
svnsync ×1
tortoisesvn ×1
ubuntu-9.10 ×1
windows ×1