Dr. Holger Schwichtenberg IT-Solutions GmbH & Co. KG

„Git in der Windows PowerShell oder PowerShell Core macht Spaß, weil man mit dem Erweiterungsmodul posh-git nicht nur Eingabehilfen und Statusinformationen, sondern die ganze Macht der PowerShell bekommt.“

Wer die Versionsverwaltung Git unter Windows installiert, der bekommt Git für die klassische Windows-Kommandozeile und mit Git BASH eine Emulation der Unix-Kommandozeile. Wir Entwickler arbeiten aber heutzutage doch lieber mit der objektorientierten PowerShell. Wie Git in Verbindung mit der Windows PowerShell und PowerShell Core geht, zeigt dieser Beitrag.

Bei der Installation von Git for Windows wird man gefragt, ob man Git nur in der Git BASH oder auch vom Windows Command Prompt (cmd) aus nutzen möchte (Abb. 1). Von Windows PowerShell oder der plattformneutralen PowerShell Core ist gar nicht die Rede. Für die Nutzung mit der PowerShell sollte man die zweite Option wählen, damit die path-Variable um den Installationspfad der git.exe ergänzt wird und gleichzeitig PowerShell-Aliase wie sort noch funktionieren. Wer bei der Installation bereits Option eins gewählt hat, kann den Installationspfad der git.exe (im Standard C:\Program Files\Git\bin) aber auch manuell in der path-Umgebungsvariable ergänzen.

Abb. 1: Installation von Git for Windows

Abb. 1: Installation von Git for Windows

Umgebungsvariable „path“ konfigurieren in der PowerShell

Wer unsicher ist, welche Pfade in der path-Umgebungsvariablen aktuell stecken, ruft in der Windows PowerShell oder der PowerShell Core den Befehl $env:path auf. Diese Variable liefert alle Pfade in einer mit Semikolon getrennten Liste. Übersichtlicher wird es, wenn man anhand der Semikola trennt:

$env:path -split ";"
Wenn der Git-Installationspfad dort fehlt, ergänzt man diesen im aktuellen PowerShell-Prozess:
$env:path += ";C:\Program Files\Git\bin"

Für weitere Prozesse (PowerShell und andere) ändert man die Einstellung mit:

$PathAlt = [Environment]::GetEnvironmentVariable("PATH", [System.EnvironmentVariableTarget]::Machine)
$PathNeu = $PathAlt + ";C:\Program Files\Git\bin";
[Environment]::SetEnvironmentVariable("PATH", $env:PATH, [System.EnvironmentVariableTarget]::Machine)

Wenn das Git-Installationsverzeichnis dann also im aktuellen Pfad liegt, sollte die Eingabe git –version die aktuelle Git-Version liefern.

Alle Git-Befehle kann der Nutzer nun in der PowerShell einsetzen, siehe git init, git add und git commit in Abbildung 2. Eine Eingabehilfe für Git-Befehle oder spezielle Anzeigen für den Status des Git-Repositories gibt es allerdings auf diesem Weg erstmal nicht.

Abb. 2: Erste Versuche mit Git in der PowerShell Core unter Windows

Abb. 2: Erste Versuche mit Git in der PowerShell Core unter Windows

Posh-Git installieren

Komfortabler wird die Git-Bedienung mit der Installation des PowerShell-Erweiterungsmoduls posh-git aus der PowerShell Gallery. Das zugehörige Github-Projekt inklusive Dokumentation findet man auf der Website der PowerShell Gallery. Die Installation von posh-git funktioniert sowohl in Windows PowerShell als auch PowerShell Core mit dem Befehl

Den vollständigen Artikel lesen Sie in der Ausgabe:

Windows Developer 3.19 - "Die neue Git-vasion"

Alle Infos zum Heft
579878528Git in der Windows PowerShell und PowerShell Core
X
- Gib Deinen Standort ein -
- or -