Git кодировка символов с испанскими символами - PullRequest
19 голосов
/ 19 августа 2011

Я создал хранилище из существующих файлов.Внутри набора файлов был файл с именем «español.gif».Теперь, каждый раз, когда я делаю

$ git status

, я получаю сообщение об ошибке:

$ path/espa�ol.gif: Protocol error

Я пытался удалить файлы, используя

$ git rm path/espa�ol.gif
$ git rm --cached path/espa�ol.gif
$ git rm path/espa?ol.gif
$ git rm --cached path/espa?ol.gif

, но ничего не меняется, он сохраняетговоря «Ошибка протокола».

Если я пытаюсь выполнить слияние, я получаю:

ошибка: ваши локальные изменения в 'path / espa�ol.gif' будут перезаписаны слиянием,Отмена.

Есть ли способ удалить файл из индекса и перестать иметь эту ошибку?

Редактировать: я решил проблему, удалив репозиторий Git и создав его заново,без файла с испанским символом в имени.

Ответы [ 2 ]

13 голосов
/ 25 августа 2011

Это должно решить проблему

git config core.quotepath false

Из man git-config (1) для core.quotepath:

Команды, которые выводят пути (например, ls-files, diff), когда нет учитывая опцию -z, будет указывать «необычные» символы в путь, заключив путь в двойные кавычки и выполняет обратную косую черту так же, как строки в исходном коде на C заключаются в кавычки. Если эта переменная имеет значение false, байты выше 0 × 80 не цитируется, но выводится дословно. Обратите внимание, что двойная кавычка, обратная косая черта и управляющие символы всегда заключаются в кавычки без -z независимо от установка этой переменной.

1 голос
/ 02 сентября 2011

Вы также можете использовать команду git clean (возможно, git clean -d -f, но , сначала обратитесь к руководству по git !) Для удаления неотслеживаемых файлов - это причина сообщения об ошибке "error:Ваши локальные изменения .... ".

Из-за проблем с кодировкой Git, вероятно, уже создал файл с неверным именем файла, и хотя вся операция (pull / push?) Была отклонена, уже созданный файл осталсяв пункте назначения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...