同步SVN存储库(svnsync)与编码错误 [英] Synchronize an SVN repo (svnsync) with encoding errors
问题描述
与svnsync
同步存储库时,是否可以修复/绕过非UTF8编码的svn:log记录?
Is it possible to fix/bypass non-UTF8 encoded svn:log records when synchronizing repositories with svnsync
?
背景
我正在接管一个开源模块的维护工作,该模块存储在一个大型(远远超过10,000个修订版)Subversion(1.5.5)存储库中.我无权访问远程存储库以转储/过滤/加载模块.旧的存储库已停止使用,我正尝试使用svnsync将原始子模块同步到本地(1.6+)存储库.例如:
I'm in the process of taking over the maintenance of an open source module that is stored within a large (well over 10,000 revisions) subversion (1.5.5) repository. I do not have admin access to the remote repository to dump/filter/load the module. The old repository is being discontinued and I am trying to sync the original sub module to my local (1.6+) repository with svnsync. For example:
svnsync file://home/svn/temp-repo/ http://path.to.repo/modulename/
问题是旧存储库未强制执行UTF8编码,并且出现了以下错误:
The problem is that the old repository didn't enforce UTF8 encoding and I'm hitting errors like:
svnsync: Cannot accept 'svn:log' property because it is not encoded in UTF-8
我无法在源存储库中修改log属性,因此当编码未知/无效时,我需要以某种方式修改或忽略该属性值.
I can't modify the log property in the source repository so I need to somehow modify or ignore the property value when the encoding is unknown/invalid.
有什么想法吗?
例如:
-
pre-revprop-change
脚本可以修改传输中的log属性吗? - 有人告诉我git-svn可以处理它,但是使用中间git回购-这到底是怎么做到的?
- 是否有可能完全忽略日志属性,或对于特定修订版本
- can a
pre-revprop-change
script modify the log property in transit? - I'm told that git-svn can handle it but using an intermediate git repo - how exactly is this done?
- would it be possible to ignore log properties altogether, or for particular revisions
推荐答案
You will need to wait for the next version of Subversion, there is a pending patch to add support for non-UTF8 encodings to svnsync
.
这篇关于同步SVN存储库(svnsync)与编码错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!