spdr870/gitextensions — pull request #821 by jbialobr (2012-03-02 08:41:19+00:00)
Title: Two encodings: FilesEncoding and AppEncoding 

FilesEncoding - for repo files content
AppEncoding - for git config files

Follow by git i18n CommitEncoding and LogOutputEncoding is a hell. Command output may consist of:
1) commit message encoded in CommitEncoding, recoded to LogOutputEncoding or not dependent of
pretty parameter (pretty=raw - recoded, pretty=format - not recoded)
2) author name encoded dependently on config file encoding, not recoded to LogOutputEncoding
3) file content encoded in its original encoding, not recoded to LogOutputEncoding
4) file path (file name is encoded in system default encoding), not recoded to LogOutputEncoding,
every not ASCII character is escaped with \ followed by its code as a three digit octal number
5) branch or tag name encoded in system default encoding, not recoded to LogOutputEncoding

Saying that "At the core level, git is character encoding agnostic." is not enough
In my opinion every data not encoded in utf8 should contain information
about its encoding, also git should emit structuralized data

This pull request fixes all mojibakes I found but one:
When logoutputencoding is different from commitencoding, then stash save produce commit message with mojibakes. But this bug is probably more git than GitExtensions.