Кодовая страница с использованием git-svn - PullRequest
2 голосов
/ 22 ноября 2010

Когда я клонирую репозиторий, используя git svn, я получаю что-то вроде «єє‚ѓѓѓ ° »ЊЊЅѕѕ» вместо национальных символов (русских) в именах файлов .... (я не могу прочитать это ...) Я думаю, что gitпытается использовать UTF-8 вместо UTF-16 при сохранении файлов, в то время как Windows использует UTF-16.Есть ли решение?Могу ли я указать кодовую страницу для GIT SVN?

Ответы [ 2 ]

3 голосов
/ 22 ноября 2010

Это было задокументировано в выпуск msysgit 159 (считается дубликатом выпуск 80 ) и обсуждалось в предложении исправления " Windows: предполагается, что все имена файлов имеют UTF-8 закодировано.".

Я не думаю, однако, что переведено в любое реальное решение.

Самым большим препятствием будет то, что у git нет понятия«кодировка имени файла» - это просто обрабатывает имя файла как поток байтов.Там нет места, чтобы написать кодировку.Если байтовые потоки считаются имеющими кодировку, то вы можете иметь неоднозначности, смешанные кодировки или недопустимые символы.Вам придется как-то с этим справиться.

Единственное решение, о котором я слышал, это версия msysgit из этого GitHub repo : вы можете попробоватьэто и посмотреть, если только для этого импорта, он работает лучше: Git-1.7.0.2-utf8-20100725.exe .

1 голос
/ 02 августа 2012

Я решил свою проблему (недопустимые символы после svn dcommit), установив кодирование i18n:

В моем случае кодовая страница ISO-8859-1 вместо UTF-8:

git config --global i18n.commitencoding ISO-8859-1

...