Stash in der Praxis – Branches schützen leicht gemacht

Read this post in English.

Bei der Arbeit in einem Git-basierten Software-Projekt ergeben sich einerseits einige Risiken, die den Entwicklungsprozess, die Software-Qualität und die Stabilität gegebenenfalls bestehender Abläufe behindern können. Auf der anderen Seite möchte man den Entwicklungsprozess auch nicht durch zu restriktive Modelle ausbremsen.

Gut, dass Stash, das Git-Repository-Managementsystem von Atlassian, ein granulares, fein justierbares Sicherheitskonzept mitbringt. Hier sind ein paar pragmatische Schritte, wie sich Git-Branches in Stash schützen lassen.

1. Workflows für die Zusammenarbeit etablieren

Zunächst ist es wichtig, dass ein Team einen festen Workflow für die Arbeit mit Git, die Verwendung unterschiedlicher Branching-Modelle und die Integration qualitativer Freigabeprozesse definiert und verinnerlicht (Kommunikation > Tools). Beispiele hierfür bietet im Detail unser Artikel Individuelle Software-Entwicklung: Workflows, Branching-Modelle und Continuous Delivery.

2. Force Pushes in Stash per Workflow-Hook verbieten

Es ist empfehlenswert, das Erzwingen von Pushes zu unterbinden. Dadurch werden Push-Requests grundsätzlich abgelehnt, wenn sie in Nicht-Fast-Forward-Merges resultieren, und können auch nicht mit git push --force erzwungen werden. Dafür genügt ein Klick, wie der folgende Screenshot zeigt:

Force push in Stash deaktivieren

Force Push in Stash deaktivieren

3. Berechtigungen für Release-/Produktions-/Entwicklungs-Branch konfigurieren

Wir verbieten hier das Neuschreiben der Historie sowie das Löschen des Branchs und unterbinden Änderungen, die ohne Pull-Request direkt in diesem Branch vorgenommen werden sollen:

Konfiguration der BranchBerechtigungen in Stash

Konfiguration der Branch-Berechtigungen in Stash

4. Konfiguration für Pull-Requests in Stash

Schließlich richten wir die Einstellungen für Pull-Requests im Hinblick auf die folgenden Aspekte ein:

  • Anzahl benötigter prüfender Personen zur Freigabe
  • Notwendigkeit, alle zu einem Pull-Request gehörenden Aufgaben abzuschließen
  • Mindestzahl erfolgreicher Build-Durchläufe, sofern beispielsweise ein Bamboo-Integrationsserver mit dem Projekt verbunden und entsprechend konfiguriert ist
Konfiguration für Pull-Requests in Stash optimieren

Konfiguration für Pull-Requests in Stash optimieren

Damit ist unser Branch so konfiguriert, dass niemand bestehende Commits überschreiben kann, dass nur die richtigen Personen Schreib- und vor allem Admin-Zugriff auf unsere Entwicklungslinie haben und dass für Pull-Requests bestimmte Qualitätssicherungskriterien verpflichtend sind – das alles mit wenigen Klicks in Stash.

Stash testen und lizenzieren? Wir sind Ihr Partner!

Interessieren Sie sich für Stash und/oder andere Entwickler-Tools von Atlassian? Möchten Sie mehr erfahren? Wollen Sie das System direkt testen? Wir sind offizieller Vertriebspartner von Atlassian und einer der größten Atlassian Experts weltweit und unterstützen Sie gerne bei der Evaluierung und Lizenzierung. Sprechen Sie uns einfach unverbindlich an.

99 Argumente für Stash als Git-Repository-Manager
Branch-basierte Git-Workflows mit Stash adaptieren
Echte Integration: Das Zusammenspiel von JIRA, Stash und Bamboo
Vortrag: Git in the Enterprise
Interview: Die Vorteile von Git in der Software-Entwicklung und die Möglichkeiten von Stash
So funktioniert die Lizenzierung von Atlassian-Produkten

Artikel teilen:Share on FacebookTweet about this on TwitterShare on Google+Share on LinkedInEmail this to someonePrint this page