Não é possível fazer com que o git seja agradável com iconv e utf-16

Estou tentando fazer com que o git reconheça o UTF-16 como texto, para que eu possa diferenciar e corrigir como texto nativamente, mas estou tendo problemas para obter otextconv parâmetro para trabalhar.

Posso ligar manualmente

iconv -f utf-16 -t utf-8 some-utf-16-file.rc

e está tudo bem. Mas se eu configurar meu .gitconfig da seguinte maneira

[diff "utf16"]
    textconv = "iconv -f utf-16le -t utf-8"

e meus .gitattributes:

# Custom for MFC
*.rc text eol=crlf diff=utf16

No entanto, se eu então, se eu corrergit diff, o seguinte é exibido:

iconv: C:/Users/Mahmoud/AppData/Local/Temp/IjLBZ8_OemKey.rc:104:1: incomplete character or shift sequence

Com o procmon, consegui localizá-lo ao criar este processo:

sh -c "iconv.exe -f utf-16le -t utf-8 \"$@\"" "iconv.exe -f utf-16le -t utf-8" C:/Users/Mahmoud/AppData/Local/Temp/JLOkVa_OemKey.rc

... que eu realmente posso executar bem (no arquivo real).

Alguma ideia?

(Observe que estou ciente das várias soluções para fazer o git funcionar com o UTF-16. Estou tentando especificamente resolver essa questão de por que o iconv por si só funciona, mas não funcionará quando chamado pelo git. Foi originalmente encontrado um erro ao tentar uma das soluções vinculadas da pergunta "duplicado". Obrigado a todos.)

questionAnswers(3)

yourAnswerToTheQuestion