1

目前我有一个本地 Subversion 存储库,其中包含许多cp1251编码中的提交消息。

有什么方法可以将所有提交消息转换为utf-8编码?

4

2 回答 2

2

正如 Rup-8 所说,subversion 应该在将所有日志消息存储到存储库之前将它们转换为 UTF-8,然后再转换回本地编码以进行显示。如果您的日志消息未正确转换,则:

  • 确保您的语言环境设置正确识别您正在使用的编码;或者,
  • 使用 --message-encoding 选项
于 2011-04-11T18:33:01.707 回答
1

您的提交消息已存储为 UTF-8

Subversion 在内部处理某些数据位——例如,属性名、路径名和日志消息——作为 UTF-8 编码的 Unicode。不过,这并不是说您与 Subversion 的所有交互都必须涉及 UTF-8。作为一般规则,Subversion 客户端将优雅而透明地处理 UTF-8 和您计算机上使用的编码系统之间的转换,如果这种转换可以有意义地完成(这是当今使用的大多数常见编码的情况)。

但是,如果您以某种方式对它们进行了双重编码,那么假设您使用的是 FSFS 样式的存储库,最简单的方法可能是处理您在db/revprops/*/*存储库下找到的所有 revprop 文件,然后用正确的编码,例如使用来自 GnuWin32 的 iconv 命令行工具。(请注意,这些文件应该有 Unix 行结尾,即 LF 而不是 CRLF)。

于 2011-04-11T18:29:21.503 回答