GIThub и неанглийские окна? - PullRequest
2 голосов
/ 21 марта 2011

Как вы, наверное, знаете, Git Bash не поддерживает нелатинские символы. Это приводит к множественным сбоям при создании и использовании ключей SSH (так как пути русские).

Есть ли обходной путь?

1 Ответ

2 голосов
/ 21 марта 2011

Это полностью зависит от того, на что указывает ваш ДОМ:

См. Выпуск 491 :

Подводя итог моим тестам, если имя пользователя Windows не имеетСимволы ASCII:

  1. Если для переменной среды HOME задан путь ASCII и этот путь существует, Git Bash находит его (так чтоэто один из возможных обходных путей).

  2. Если переменная окружения HOME отсутствует, а для константы HOME в "git/etc/profile" задан путь ASCII, и этот путь существует, Git Bash находит его.Поведение выглядит точно так же, как в 1.

  3. Если для переменной среды HOME задан путь не-ASCII (например, "C:\Höme"), Git Bashне находит это.Он пытается вернуться к каталогу C:\Documents and settings\[User Name], но не может найти его, потому что он искажает не-ASCII символы в [User Name].

  4. После того, как системная переменная HOME (или константа в git/etc/profile) настроена на полный путь ASCII, Git Bash находит домашний каталог, но все равно калечит пользователяимя в отображаемых сообщениях.

  5. При первом запуске Git GUI, когда я пытаюсь создать и зафиксировать файл, возникает ошибка, в которой говорится, что недопустимые символы utf-8в сообщении фиксации.
    Обходной путь для этого заключается в открытии диалогового окна Edit->Options и вводе действительного имени пользователя и адреса электронной почты в соответствующие поля редактирования .
    Кажется, что Gitсоставление расширенного сообщения на основе моего сообщения плюс имя пользователя и адрес электронной почты.Поскольку поля пусты, кажется, что они пытаются сгенерировать значения по умолчанию из имени пользователя Windows, но, вероятно, извлекают это как строку ISO-8859-1 в моей системе, а затем другая часть кода ожидает, что она будет действительнойUTF-8, но это не так.

  6. Если поля имени пользователя и адреса электронной почты оставлены пустыми, я также столкнулся с ошибкой, показанной на изображении "error2.jpg" выше, при попытке изменить некоторые параметры в редактировании-> Диалог настроек.Однако эта ошибка не всегда возникает, и я не уверен в точных шагах, которые к ней приводят.

  7. После того, как я установил переменную HOME, а также имя пользователя и адрес электронной почты, я могу работать без проблем, кроме следующего.

  8. Пути и имена файлов, не входящие в ASCII, можно ставить и фиксировать, если они состоят из символов в локальной кодировке Windows (я думаю, что это ISO-8859-1 для испанского, английского и большинстваЗападноевропейские системы Windows).
    Итак, я смог подготовить и зафиксировать файл с именем "cañón.txt".
    Однако, если путь содержит символы Юникода, которые невозможно представить в локальной кодировке WindowsКак и «C:\My tests\test五.txt», такие файлы появляются в окне Git GUI с ошибками и выдают ошибку «no such file or directory» при попытке их размещения.

...