git i PowerShell oraz polskie znaki

Bardzo lubię PowerShella jako narzędzie do konsolowej obsługi systemu.

Jeżeli korzystasz z gita przez konsolę to musisz wiedzieć o posh-git. Jest to rozszerzenie do PowerShella pozwalające na dodatkowe wsparcie przy korzystaniu z gita.

Korzyści to:

  • Znak zachęty zostaje wyposażony o dodatkowe informacje

    posh_git_prompt

  • Komendy są uzupełniane przez wykorzystanie przycisku Tab

Do uproszczonej instalacji potrzebujemy Powershell w wersji 5 lub wyższej.

Aby sprawdzić wersję Powershella zainstalowanego na twoim komputerze, uruchom konsolę Powershell i wykonaj następujące polecenie

$PSVersionTable.PSVersion

Wersję 5 można pobrać z strony Microsoftu, a wersję 6 można pobrać z GitHuba (w czasie pisania tego artykuły PowerShell 6 znajduje się w stadium Release Candidate).

Instalacja posh-git to po prostu:

Install-Module posh-git -Scope CurrentUser

Aktualizacja posh-git odbywa się przez:

Update-Module posh-git

Załadowanie modułu posh-git odbywa się przez:

Import-Module posh-git

A po załadowaniu zostaje też dołączona komenda o nazwie

Add-PoshGitToProfile

która spowoduje że przy każdej następnej sesji powershella, moduł posh-git będzie automatycznie ładowany przy uruchomieniu PowerShell

Polskie litery w konsoli przy gitcie

Jeżeli użycie git log produkuje taki efekt

polish_letters_in_git_log

to potrzebujesz ustawić zmienną środowiskową LC_ALL na C.UTF-8.

Możesz to zrobić przez Powershella.

[Environment]::SetEnvironmentVariable("LC_ALL", "C.UTF-8", "User")

lub z uprawnianiami administratora:

[Environment]::SetEnvironmentVariable("LC_ALL", "C.UTF-8", "Machine")

Po ustawieniu tej zmiennej środowiskowej musisz zrestartować okna konsol.

i git log powinien pokazywać polskie znaki

polish_letters_fixed