Versionskontrolle mit git: Grundeinstellungen

Dieser kurze Artikel listet Schritte für die Einrichtung eines lokalen git-Repositories auf einem Debian-Rechner auf.

Installieren Sie die Pakete:

aptitude install git-core git-email git-doc

Die aktuellsten git-Versionen gibt es für Ubuntu hier:

Erstellen Sie ein Verzeichnis, das von git verwaltet werden soll und wechseln Sie hinein:

mkdir projekte ; cd projekte

Initialisieren Sie git:

git init

... oder Anlegen und Initialisieren in einem Schritt:

git init projekte

Konfigurieren Sie Autor, E-Mailadresse und eine Farbpalette:

git config --add user.name "Vorname Familienname"

git config --add user.email "meineadresse@domain.tld"

git config --add color.ui "auto"

Erstellen Sie eine Datei .gitignore in der Sie alle Dateien auflisten, die aus dem aktuellen Verzeichnis nicht von git getrackt werden sollen.

Kopieren Sie Dateien in das Projektverzeichnis und fügen Sie die Dateien git hinzu:

git add Dateien/Verzeichnis

Zeigen Sie den Systemstatus an:

git status

Lassen Sie geänderte Dateien automatisch aufnehmen:

git add . -A

Übertragen Sie alle Dateien ins Repository:

git commit -am "Hier steht ein Kommentar" 

Dieser Befehl zeigt, was bisher geschah:

git log

Weitere Vorgehensweise:
Bearbeiten Sie im Projektverzeichnis Dateien und übertragen Sie mit git commit Änderungen in den git-Speicher.

Änderungen vor dem commit anzeigen:

git diff

Alle zuletzt gemachten Änderungen in eine Datei schreiben:

git format-path -1

Welche Dateien wurden geändert?

git diff --stat

Patchdateien von anderen Teilnehmern anwenden: Zuerst nur im Testmodus, dann wirklich:

git apply --check patchdatei

git apply patchdatei

Arbeiten mit Branches

Verzeichnis erzeugen und Repository abholen (z.B. per https):

mkdir gitlokal ; cd gitlokal

git clone 'https://user@server.de/repository'

Lokalen Branch erzeugen:

git branch meinbranch

In lokalen Branch wechseln:

git checkout meinbranch

... oder in einem Schritt:

git checkout -b meinbranch

Branches zeigen:

git branch

Änderungen machen, committen, Patch erstellen.

Zurück zum Master und Änderungen abholen:

git checkout master

git pull

Masteränderungen in Branch übernehmen:

git checkout meinbranch

git rebase master

Veränderungen ins entfernte Repository übertragen:

git push origin meinbranch:master

Passen Sie Ihren Shell-Prompt an, damit dieser immer den Zweig zeigt in dem Sie arbeiten. Schalten Sie Git-Zusatzinformationen dazu:

GIT_PS1_SHOWDIRTYSTATE=1
GIT_PS1_SHOWSTASHSTATE=1
GIT_PS1_SHOWUNTRACKEDFILES=1
GIT_PS1_SHOWUPSTREAM="legacy verbose git"
export PS1='\u@\h:\w$(__git_ps1 " (%s)")\$ '

Wenn eine Fehlermeldung kommt, daß git_ps1 nicht ausgeführt werden kann, dann bauen Sie in die .bashrc folgende Zeile ein:

. /etc/bash_completion.d/git
Go to top