Am 3/2/2012 8:30, schrieb Jiang Xin:
Git does not handle multi-bytes character well. Multi-bytes characters
not convert to UTF-8 when git write tree objects and commit objects.
It does not convert, but it records which encoding the text has. If you
don't specify anything, UTF-8 is assumed, and if your text is actually not
UTF-8, the result is necessarily garbage.
I think allow multi-bytes characters in commit log would hurt git.git until
git gives full support UTF-8 (are there any plans for this?).
I just tested several versions of msysgit:
- Only Git-1.7.8-preview20111229-unicode.exe saves commit objects
with utf-8 encode.
- Other versions such as Git-1.7.9-preview20120201.exe and
Git-1.7.8-preview20111206.exe will not convert multi-bytes characters
in commit log into UTF-8.
Then you haven't set i18n.commitEncoding. Try this:
git config i18n.commitEncoding CP936
(substitute whatever Windows codepage you are using).
-- Hannes