1. Home
  2. Git Flow mit Visual Studio Team Services

Git Flow mit Visual Studio Team Services

Git Flow mit Visual Studio Team Services

Git Flow mit Visual Studio Team Services

Git Flow

Der Git Flow - früher ein Plugin, heute Bestandteil von Git - ist ein bewährter Workflow, wie mit Hilfe von Branches zusammen im Team an einer Software gearbeitet wird. Dies wird auch bei der Initialisierung eines git-Repositories abgefragt:

# Initialisierung eines git Repositories
git init

# Initialisierung von git flow:
git flow init

Anschließend wird man nach den entsprechenden Branches gefragt:

Branch name for production releases: [master]
Branch name for "next release" development: [develop]
How to name your supporting branch prefixes?
Feature branches? [feature/]
Release branches? [release/]
Hotfix branches? [hotfix/]

Die Konkurrenz von Visual Studio Team Services

Bei Open Source Projekten ist der Git-Flow der Quasi-Standard. Kein Repository lässt zu, dass unbeteiligte direkt auf das Quell-Repository/den jeweiligen Branch committen dürfen. Der übliche Weg ist über einen Pull Request.

Plattformen wie GitHub, BitBucket und Co unterstützen den Git Flow von Haus aus. Ein Kopfdruck und Git-Flow ist eingerichtet.

Visual Studio Team Services

Bei VSTS ist dem leider nicht so.

Technisch gesehen ist der Git Flow ein Schutz, dass nicht - ohne entsprechende Berechtigung - auf einen Branch committen werden darf. Genau dies muss in VSTS von Hand eingerichtet werden. Dazu gibt es in der Branch-Verwaltung des Repositories die Funktion der Branch Policies.

2017 02 08 VSTS Git Branch Policies

Anschließend muss folgendes aktiviert werden:

2017 02 08 VSTS Git Branch Policies Builds

Jetzt kann nicht mehr direkt auf den - in meinem Beispiel - master-Branch committed werden, sondern nur nich mit Hilfe eines Pull-Requests zB. aus einem feature-Branch heraus. Ebenso muss eine Build-Definition erfolgreich sein, bevor ein anschließender Merge von feature auf master möglich ist.