2012-01-20 12 views
5

Starałem się nauczyć, jak radzić sobie z niemieckimi umlautami (ä ö ü) w zrób komentarze. Bez powodzenia .....Git i PowerShell i niemieckie umlauty

Więc pomyślałem, że mógłbym spróbować użyć PowerShell i jego integracji git zamiast (PoshGit). Ale znowu - nie ma szczęścia:

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" = niektórych plików dodanych)

ciekawe - mógłbym zaprzysiężone że niemieckie umlauty są częścią standardu UTF-8 ..... hmm ......

I rzeczywiście:

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

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

Nie banan: - (

co na ziemi mam zrobić, aby uzyskać albo msysgit (z „git bash”) lub PowerShell do współpracy z Git na komentarzach popełniają? Nie mam nawet z prośbą o wsparcie nazwy plików z umlauty ... tylko komentarze (czysty tekst) na razie .....

również: wprowadzenie tego

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

do mojego .gitconfig również robi” t wydają się mieć żadnego wpływuna moich popełniają komentarze i git log .... :-(

pomysłów? Myśli? Wskaźniki ??

+0

Dlaczego nie używasz edytora do pisania komunikatów dotyczących commitów zamiast podawania ich w linii poleceń? Albo po prostu zrób to jak ja i używaj angielskich komunikatów commit: p – ThiefMaster

+0

@ThiefMaster: mamy politykę używania niemieckich komentarzy, i szczerze mówiąc, cieszę się - te komentarze "Engrish" byłyby okropne ..... –

+1

I mam nadzieję, że nie będziesz musiał używać niemieckich nazw zmiennych/funkcji;) - w każdym razie buzt, po prostu pominę '-m" ... "' i niech git uruchomi edytor. – ThiefMaster

Odpowiedz

1

Istnieje nieoficjalny instalator eksperymentu Unicode version of msysgit, który możesz chcieć wypróbować. Informacja zwrotna dla tego instalatora jest doceniana na liście mailingowej msysgit.

+1

Wygląda interesująco - ale niestety nie rozwiązuje mojego problemu - z tą kompilacją, nie mogę nawet wprowadzić żadnych umlautów - klawisze na klawiaturze po prostu nie działają :-( –

1

Nie znane dziwactwa i problemy z msysgit i Unicode, a także proste ca śpiewać. Zamiast zmagać się z tym, gdybym był w twoich butach, użyłbym VritualBox z małym obrazkiem serwera Linux (bez potrzeby korzystania z komputera) i użyłem katalogu współdzielonego między hostem i systemem gościa. W ten sposób możesz używać Gita w Linuksie, ale rozwijać w systemie Windows. Otwórz terminal, aby zdalnie połączyć się z serwerem i możesz alt + TAB w oknie, podobnie jak w przypadku MSysGit.

+2

Myślę, że Git Cygwina gra ładnie i jest trochę mniej ciężki niż cały vm poświęcony tylko kontroli źródła –

+0

VM są bardzo lekkie w tym dzień i wiek procesora i pamięci RAM. Nie dyskontuj tego. Cygwin przynosi cały szereg nowych problemów. równie dobrze mógłby ugryźć kulę i iść z vm. –

+0

Na dzień dzisiejszy można również korzystać z Ubuntu Bash systemu Windows 10, więc nie potrzebujesz maszyny wirtualnej. Właściwie nie używam gita w ten sposób, ale CVS (nie pytaj), który nie działa poprawnie na moim komputerze z Windows. – sloth

1

Mam ten sam problem (jestem ze Szwecji). Wydaje się, że jeśli używasz Git Extensions i zatwierdzasz przez to, że znaki umlaut są w porządku. Używam:

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

Chciałbym jednak rozwiązanie problemu z PowerShell/wiersza poleceń.

0

Sprawdź kodowania kodowania z $ HOME/.gitconfig (w systemie Linux) lub% USERPROFILE% \ gitconfig (w systemie Windows) plik, który zawiera coś takiego:.

[user] 
    name = Your Name 
... 

Myślę, że w twoim przypadku ten plik jest kodowana za pomocą ISO-8859-1 (Twoja nazwa zawiera nie tylko znaki ASCII), ale twoja konfiguracja projektu dotyczy UTF-8.

Miałem wczoraj tę samą sytuację i zmiana zestawu znaków pliku .gitconfig na UTF-8 rozwiązała problem.

0

Miałem ten sam problem z git za pomocą wiersza poleceń za pomocą PUTTY. Moje rozwiązanie było: Zmień kit konfigurację zestawu znaków jak opisano tutaj: http://thegreyblog.blogspot.de/2009/08/configuring-putty-to-use-utf-8.html

Po zmieniłam postać ustawione w config szpachli na UTF-8 błąd zniknął.

BTW: Jak Miklos Krywań napisał w swoim anwer: Inni ludzie też miał ten problem, ponieważ ich nazwa była z umlauty w .gitconfig.