Wo bin ich?

Ein Kollege fragte gerade, wie man per Script herausfinden kann, ob das aktuelle Verzeichnis Teil eines Git-Repositories ist oder nicht. Denn das Unterverzeichnis .git befindet sich ja nur im Hauptordner des Projektes. Nun, das ist recht einfach.

Der Befehl git rev-parse --git-dir gibt den relativen oder absoluten Pfad für das .git-Verzeichnis aus. Dieser lautet entweder .git, wenn man im Hauptverzeichnis des Repos ist, oder es ist ein absoluter Pfad dorthin, wenn man in einem Unterverzeichnis ist.

Ruft man diesen Befehl außerhalb eines Repos auf, liefert die Kommandozeile einen Fehlerstatus (Exit Code bzw. Error Level). Wenn also der Pfad zum Git-Verzeichnis nicht benötigt wird, reicht z.B. der folgende Code.

Linux

git rev-parse --git-dir
if [ $? -ne 0 ]
then
    echo "Kein Git-Repository"
else
    echo "Heureka!"
fi

Windows

@echo off
 
git rev-parse --git-dir
if ERRORLEVEL 1 goto FEHLER
 
echo Heureka!
goto ENDE
 
:FEHLER
echo Kein Git-repository!
 
:ENDE

Ähnliche Artikel:

AuthorChristoph Jüngling

Selbständiger Softwareentwickler und Seminarleiter

Kommentar verfassen