Communardo Software GmbH, Kleiststraße 10 a, D-01129 Dresden
0800 1 255 255

Atlassian Stash - Git Repository Management im Unternehmensumfeld

Der fünfte Teil unse­rer Blogreihe zu agi­ler Softwareentwicklung wid­met sich Atlassian Stash. Im Softwareentwicklungsprozess ist die­ses Werkzeug ein inte­gra­ler Bestandteil, da ent­stan­de­ner Sourcecode oder Konfigurationsdateien in einem Versionskontrollsystem abge­legt und auch noch über das Projektende hin­aus für Wartung und Fehlerbehebung bereit­ge­stellt wer­den müs­sen. Stash arbei­tet hier­bei mit dem ver­teil­ten Versionskontrollsystem Git.

Funktionsumfang

Die fol­gen­den Abschnitte beleuch­ten einige zen­trale Features von Stash. Weitere Features und eine Screenshot Tour gibt es direkt auf der Atlassian Produktwebseite zu Stash.

Projekte und Repositories verwalten

Mit Stash ist es mög­lich, neue Git-Repositories web­ba­siert anzu­le­gen und zu ver­wal­ten, ohne dass die *nix-Konsole bemüht wer­den muss. Mehrere Repositories wer­den dabei logisch zu einem Projekt zusam­men­ge­fasst.

Sourcecode und Historie durchsuchen

Als web­ba­sier­tes Repositorymanagementsystem bie­tet Stash ein nut­zer­freund­li­ches Interface, um den Sourcecode bestimm­ter Branches zu betrach­ten und die Commits samt far­bi­ger Darstellung der getä­tig­ten Änderungen ein­zu­se­hen. Über eine Suchfunktion kann sehr zügig über das gesamte Repository gesucht wer­den, um eine bestimmte Datei auf­zu­fin­den. Automatisch gene­rierte Grafiken geben einen Überblick über die Aktivität ein­zel­ner Entwickler, sowie die Menge und Häufigkeit von Commits.

Berechtigungen für Projekte

Auf Projektebene kön­nen Einzelpersonen und Gruppen rol­len­ba­siert berech­tigt wer­den.  Dabei kön­nen die Rollen Project Administrator (voll­stän­dige Berechtigungen), Contributor (Hinzufügen von Änderungen) und Observer (Lesezugriff) zuge­wie­sen wer­den. Wie bei allen Atlassian-Produkten üblich, kön­nen die Nutzer und Gruppen im Stash oder in einem exter­nen Tool (z.B. Microsoft Active Directory oder Atlassian Crowd) gepflegt wer­den.

Pull-Requests mit Reviewfunktion

Wenn von meh­re­ren Entwicklern par­al­lel an einen Projekt gear­bei­tet wird, ist es üblich, mit Featurebranches zu arbei­ten. Jeder Entwickler arbei­tet dabei unab­hän­gig von den ande­ren Entwicklern an sei­nem Feature, bis es nach Fertigstellung in die Hauptentwicklungslinie (mas­ter Branch) über­führt wird. Für die­sen Schritt bie­tet Stash die Funktion Pull Request. Ein Pull Request kann vom Entwickler erstellt und einem oder meh­re­ren Reviewern begut­ach­tet wer­den. Jeder die­ser Reviewer kann dem Überführungsschritt (merge) zustim­men oder Rückfragen direkt an bestimm­ten Codestellen an den Entwickler stel­len. Dadurch wird ein vor dem tat­säch­li­chen Merge ein Reviewschritt mög­lich. Der Merge selbst kann (sofern keine Konflikte vor­lie­gen) direkt web­ba­siert aus­ge­löst wer­den.

In einem wei­te­ren Artikel wer­den wir etwas aus­führ­li­cher auf den Entwicklungsprozess mit Stash ein­ge­hen.

Integration

Wie nicht anders zu erwar­ten, exis­tiert für Stash eine bidi­rek­tio­nale JIRA-Integration mit­tels Application Links. Anhand von in Commit-Kommentaren erwähn­ten JIRA-Issue-Keys wird die Zuordnung zwi­schen Commit und Issue her­ge­stellt. In Stash wer­den die jewei­li­gen Tickets am Commit klick­bar dar­ge­stellt, im JIRA wer­den Commits am Issue im Source-Tab (in der deut­schen Oberfläche "Quelle") auf­ge­lis­tet. Damit kann man gut zwi­schen den Systemen navi­gie­ren und erhält ein Tracing von JIRA-Issues bis auf Code-Ebene.

Erweiterbarkeit durch Plugins

Zusätzlich zu den Kernfunktionen von Stash gibt es eine leben­dige Community, die stän­dig an Erweiterungen arbei­tet und diese als Plugins auf dem Atlassian Marketplace bereit­stellt. Derzeit ste­hen 19 Plugins für Stash zum Download bereit, die alle kos­ten­los sind.

Es gibt doch GitLab– Argumente für Stash

Um sich für einen Einsatz von Stash im Unternehmen zu ent­schei­den, kommt man nicht umhin, die Lizenzkosten für Stash und freie Toolalternativen zu eva­lu­ie­ren. Gegenüber bekann­ten freien Repositorymanagement-Tools bie­tet Stash eine Reihe von Vorteilen:

1. Konzipiert für den Unternehmenseinsatz

Stash ist direkt für den Einsatz in gro­ßen Unternehmen kon­zi­piert. Somit kön­nen auch Projekte mit meh­re­ren Repositories und grö­ße­ren Entwicklerzahlen effi­zi­ent ver­wal­tet wer­den. Die Vergabe von Berechtigungen an Nutzergruppen ist dabei ein Alleinstellungsmerkmal.

2. Regelmäßige Updates und Featurereleases

Stash wird von Atlassian aktiv ent­wi­ckelt, sodass es regel­mä­ßig Feature- und Bugfixreleases gibt, sowie Patches für Sicherheitslücken. Weitere für den Unternehmenseinsatz wich­tige Features (z.B. Berechtigungen für Branches) befin­den sich in der akti­ven Entwicklung.

3. Integration in die Atlassian Toollandschaft

Wie nicht anders zu erwar­ten inte­griert sich Stash her­vor­ra­gend in die Atlassian Toollandschaft. Derzeit exis­tie­ren Anbindungen für JIRA, Crowd und HipChat. Es ist zu erwar­ten, dass in abseh­ba­rer Zeit auch wei­tere Systeme, wie Fisheye, Crucible, Confluence und Bamboo inte­griert wer­den.

4. Profitieren vom Atlassian Ecosystem

Atlassian ver­fügt über eine rege, inter­na­tio­nale Community. Anwender kön­nen sich auf Atlassian Answers zu ver­schie­de­nen Problemen aus­tau­schen, Viele Softwarehäuser und Einzelpersonen ent­wi­ckeln freie und kos­ten­pflich­tige Plugins, die über den zen­tra­len Atlassian Marketplace auf­find­bar sind. Bei grö­ße­ren Problemen hilft der her­vor­ra­gende Atlassian Support. Regelmäßig fin­den Veranstaltungen von Atlassian zu Anwender- und Entwicklerthemen statt.

Unsere Leistung für Sie

Communardo ist Atlassian Platinum Expert und berät Sie gern zu Fragen rund um die Atlassian Produkte. Zudem kön­nen Sie über uns direkt Lizenzen erwer­ben.

Related Posts

Pin It on Pinterest