Git и PowerShell и немецкие умлауты - PullRequest
5 голосов
/ 21 января 2012

Я пытался научить msysgit, как обращаться с немецкими умлаутами (ä ö ü), например, комментировать.Не повезло .....

Так что я подумал, что мог бы вместо этого использовать PowerShell и его интеграцию с git (PoshGit).Но опять же - не повезло:

D:\temp\test [ +12 ~0 -0 !]> git add --all

D:\temp\test [ +12 ~0 -0]> git commit -m "Einige Dateien hinzugefügt"
  Warning: commit message does not conform to UTF-8.
  You may want to amend it after fixing the message, or set the config
  variable i18n.commitencoding to the encoding your project uses.
  [master (root-commit) 085b7d6] Einige Dateien hinzugef?gt
     12 files changed, 3320 insertions(+), 0 deletions(-)

("Einige Dateien hinzugefügt" = некоторые файлы добавлены)

Интересно - я мог бы поклясться что немецкие умлауты являются частью стандарта UTF-8 ..... хмм ......

И достаточно точно:

D:\temp\test [master]> git log

  085b7d6 (HEAD, master) Einige Dateien hinzugef<FC>gt [Marc Scheuner] [4 seconds ago]

Нет банана :-(

ЧТО НА ЗЕМЛЕ я должен сделать, чтобы получить либо msysgit ("Git bash"), либо PowerShell для сотрудничества с Git в комментариях к коммиту? Я даже не прошу поддержкиимена файлов с Umlauts ... только комментарии (чистый текст) на данный момент .....

Также: добавление этого

[i18n]
commitencoding = ISO-8859-1
logoutputencoding = ISO-8859-1

в мой .gitconfig также не кажетсяиметь любой эффект на мои комментарии коммитов и git log ....: - (

Есть идеи? Мысли? Указатели ??

Ответы [ 5 ]

1 голос
/ 22 января 2012

Есть неофициальный установщик для экспериментальной Unicode-версии msysgit , которую вы можете попробовать.Обратная связь с этим установщиком приветствуется в списке рассылки msysgit.

1 голос
/ 18 сентября 2012

У меня такая же проблема (я из Швеции). Похоже, что если вы используете Git Extensions и делаете коммит через это, то символы умлаут хорошо. Я использую:

 [i18n]
 commitencoding = windows-1252
 logoutputencoding = Windows-1252
 filesEncoding = Windows-1252

Хотелось бы решить проблему powershell / командной строки.

1 голос
/ 21 января 2012

Известны причуды и проблемы с MSysGit и Unicode, а также с простым корпусом. Вместо того, чтобы бороться с этим, если бы я был на вашем месте, я бы использовал VritualBox с небольшим образом Linux-сервера (не нужно для рабочего стола) и использовал бы общий каталог между хост-и гостевой ОС. Таким образом, вы можете использовать Git в Linux, но разрабатывать в Windows. Откройте терминал для удаленного доступа к серверу, и вы можете alt + TAB в окне, как в MSysGit.

0 голосов
/ 20 июля 2016

У меня была такая же проблема с git с использованием командной строки через PUTTY.Мое решение было: Измените конфигурацию PUTTY для набора символов , как описано здесь: http://thegreyblog.blogspot.de/2009/08/configuring-putty-to-use-utf-8.html

После того, как я изменил набор символов в конфигурации PUTTY на UTF-8,ошибка исчезла.

КСТАТИ: Как писал в своем ответе Миклос Криван: У других людей была эта проблема также из-за того, что их имя пользователя было с umlauts в .gitconfig.

0 голосов
/ 09 июля 2015

Проверьте кодировку кодировки вашего файла $ HOME / .gitconfig (в Linux) или% USERPROFILE% \. Gitconfig (в Windows), который содержит что-то вроде:

[user]
  name = Your Name
...

Я думаю, что в вашем случае этот файл кодируется с помощью ISO-8859-1 (ваше имя содержит не только символы ASCII), но ваш проект настроен на UTF-8.

У меня была такая же ситуация вчера, и изменение кодировки файла .gitconfig на UTF-8 решило проблему.

...