Git-tfs
Table of Contents
Git statt TFS?⌗
Wer gerne mit git arbeitet, wünscht sich oft eine Brücke von anderen Versionsmanagement-Werkzeugen zu git.
So gibt es zur Nutzung von Subversion (snv) die Möglichkeit git-svn zu nutzen.
Was aber, wenn die Serverseite TFS{.broken_link} anbietet?
Installation⌗
Git für Windows wird einfach via Installer in das System gebracht.
Eine Brücke zu TFS fehlt jedoch noch.
Abhilfe schafft hier das Werkzeug git-tfs.
Zur Installation muss lediglich die Datei heruntergeladen und entpackt werden.
Anschließend fügen wir das Verzeichnis der PATH
Variable hinzu.
Nun kann das installierte git
einen weiteren Befehl: git tfs
Klonen⌗
Als erstes schauen wir uns an, welche TFS Projekte/Branches auf dem Server liegen:
git tfs list-remote-branches http://MEIN-TFS-SERVER:8080/tfs/
Wenn wir das Projekt gefunden haben, das wir brauchen, klonen wir es uns - und zwar mit allen Branches:
git tfs clone --with-branches http://MEIN-TFS-SERVER:8080/tfs/ $/MeinProjekt
Je nach Projektgröße, kann dieser Schritt einige Zeit dauern.
Arbeiten mit git⌗
Die Arbeit mit git
erfolgt wie gewohnt, lediglich das “pushen” auf den Server bzw. das “pullen” entfällt.
Hierzu müssen wir abermals git-tfs
aufrufen:
TFS nach Git⌗
Wenn wir uns die Änderungen von Teamkollegen abholen wollen, erfolgt dies mit folgendem Befehl:
git tfs pull
Um dies für alle Branches durchzuführen, nutzen wir:
git tfs pull --all
Um dabei statt eines Merge einen Rebase durchzuführen, nutzen wir:
git tfs pull --rebase
Git nach TFS⌗
Nachdem wir eine (oder mehrere) Aufgaben erledigt haben wollen wir unsere Commits auch an den TFS übertragen.
Gerade bei TFS Konfigurationen, die Anforderungen an einen Checkin haben (z.B. “muss mit einem Task verbunden sein”) bietet sich das “Checkintool” an.
Diese Programm erlaubt es komfortabel Git-Commits auf den TFS Server zu bringen und dabei TFS Elemente (z.B. Tasks) zu verlinken.
git tfs checkintool
Alternativen⌗
Wer unter einem anderen Betriebssystem als Windows arbeitet, kann Microsofts
eigene Brücke namens git-tf(!) nutzen.
Diese in Java geschriebene Brücke funktioniert ähnlich git-tfs, bietet jedoch
kein “Checkintool”.
Fazit⌗
Git-tfs erlaubt es extrem einfach eine transparente Brücke zwischen TFS und Git zu nutzen.
Wer Nicht-Windows Betriebssysteme nutzt, kann mit git-tf ebenfalls mit einem TFS zusammen arbeiten.