svn日志乱码

svn日志乱码
svn日志乱码

(金庆的专栏)

Windows上用TortoiseSVN提交, 在Linux上查看日志时显示的是乱码.
中文字符变成了一个问号和一个8进制数, 如: ?\227。

将日志输出为xml: svn log -r 123456 --xml > log.xml
然后用iconv手工转成GB2312显示:
iconv -f utf8 -t GB2312 log.xml
就可以发现iconv报告: 未知 nn 处的非法输入序列.

此处是一个横杠, "—", GB2312码为0xa1aa, utf8码为0xe28094,
iconv将svn日志uft8转GB2312时失败, 所以才显示出乱码.

iconv 可以将 0xa1aa 转成 0xe28094, 但是不能反向转.
还有一个稍短点的横杠, 0xe28095, GB2312码为0xa844,
iconv可以从GB2312转成utf8, 但是utf8转GB2312失败.

不知有没有办法让svn忽略无法转换的字符? 这样整条日志还是可以看到.

在linux上svn直接提交的长横杠显示是正常的,
GB码是0xa1aa, xml日志中utf8码是0xe28095.

你可能感兴趣的:(svn日志乱码)