2011-04-11 76 views

回答

1

你提交messasges are already stored as UTF-8

颠覆内部处理数据 - 例如某些位,属性名称,路径名,和日志消息-为UTF-8编码的Unicode。但这并不是说你和Subversion的所有交互都必须包含UTF-8。作为一般规则,Subversion客户端将优雅而透明地处理UTF-8与计算机上正在使用的编码系统之间的转换,如果这样的转换可以有效地完成(现在使用的大多数常见编码就是这种情况)。

如果你已经在某种程度上双重编码他们,虽然,那么假设你使用FSFS式仓库的最简单的方法可能是通过所有您在db/revprops/*/*找到你的资料库下方的版本属性文件工作并用正确的编码重新编写它们,例如使用iconv command-line tool from GnuWin32。 (请注意,这些文件应该有Unix行尾,即LF不是CRLF)。

+0

我一直在寻找到'revs',而不是'revprops'目录,日志信息确实存储为UTF-8。看起来像我遇到的问题实际上是一个控制台工具没有正确使用UTF-8。 – Regent 2011-04-12 09:08:10

+0

用于输出输出?如果输入,那么你可能需要'--encoding',正如mazaneicha所说;对于输出,你可能会使用'--xml'输出,它总是UTF-8(应该是!)。 – Rup 2011-04-12 09:23:07

+0

我一直在玩'svnlook',它看起来不能正确输出UTF-8 ... – Regent 2011-04-12 10:51:29

2

正如Rup-8所说,Subversion应该将所有日志消息转换为UTF-8,然后再将它们存储在存储库中,并返回到本地编码以供显示。如果日志消息未被正确转换,请执行以下任一操作:

  • 确保您的语言环境设置正确地标识了您正在使用的编码;或者,
  • 使用--message编码选项
+0

看起来它实际上是一个控制台工具的问题之一,而不是正确处理UTF-8,而不是使用SVN存储库本身。 – Regent 2011-04-12 09:09:40