【发布时间】:2010-12-01 20:54:23
【问题描述】:
我尝试通过我的 Mercurial 包装库进行简单的提交,使用 Unicode:æøåÆØÅ 的简单文本作为我的提交消息。这将写入一个文本文件并使用适当的参数提供给 Mercurial:
hg commit --logfile FILE
如果我随后使用 TortoiseHg 查看存储库,则字符被正确复制。在控制台上,它们被破坏了:
[C:\Temp] :hg 日志 变更集:0:6a0911410128 标签: 小费 用户:Lasse V. Karlsen 日期:2010 年 12 月 1 日星期三 21:48:54 +0100 摘要:Unicode:├ª├╕├Ñ├å├ÿ├à如果我将hg log 的输出重定向到一个文件并打开它,æøåÆØÅ 会正确复制。
所以,我的问题是:
- 能否请
hg直接将日志写入文件,还是必须重定向标准输出? - 这是否会导致控制台的 python 编码出现问题,即。某些字符会使
hg崩溃,而不仅仅是破坏输出? - 我应该遵守的提交消息是否有已知的受支持编码?
还是就这么简单:
- Mercurial 不在乎,它获取我提供给它的文件的内容,无论内容是什么,并将其存储为提交消息。生成日志时,它只会将其转储回控制台,从而成为 Python 控制台输出库在这方面的任何限制的牺牲品?
【问题讨论】: