27 May 2009 Bugtracking, Builds, Management, SVN, TFS, Trac, Visual Studio Robert Muehsig

imageBereits in einem sehr frühen HowToCode Beitrag habe ich ein paar "fundamentale" Sachen erwähnt die ein Software-Projekt braucht. In meiner Freizeit bastel ich an einem Community Projekt auf Basis von ASP.NET MVC. Da ein TFS für Community Projekte (die nicht Open Source sein wollen/sind) eigentlich unerschwinglich sind, nutzen wir SVN als Source Code Verwaltung & Trac zum Managen. In diesem Post geht es um die Zusammenarbeit von Visual Studio mit diesen Tools und wo es noch etwas klemmt.

Team Foundation Server - die eierlegende Wollmilchsau

In der Firma nutzen wir (unter anderem) das Team System 2008 und sind auch eigentlich mehr oder weniger zufrieden damit - auch wenn der TFS bzw. dessen TeamExplorer ab und an rumzickt.
Das tolle an diesem Server ist, dass er so ziemlich alles vereint, was man sich wünscht: Von Anforderungsmanagement, über Builds, Source Control, Tests etc. deckt er recht viel ab (ob es immer 100% zufriedenstellend ist, ist eine andere Sache ;) ). In vielen Fällen kann man allerdings nicht auf diesen Server zurückgreifen, weil die Lizenzen auch recht kostenintensiv sind und für kleine Hobby Projekte lohnt es sich er recht nicht. Das Problem dabei: Die Features braucht man irgendwie doch.

Was "braucht" man zum Entwickeln?

In einem Projekt, welches zu den Hobbyprojekten gehört, nehmen wir folgende Sachen:

  • Source Code Verwaltung: Subversion
  • "Mangement"/Bugtracking/WorkItems/Tickets/Wiki: Trac

Diese zwei Sachen, neben Visual Studio, sind eigentlich sehr praktisch und wenn es etwas größere Hobbyprojekte werden unerlässlich.

Ohne Aufgabenmanagement & Bugtracking verliert man recht schnell den Überblick was noch getan werden muss. In kleineren Stil geht das noch, allerdings wird es nach einiger Zeit etwas mühsam und wenn man einen Projektleiter hat, der etwas Wert auf Projektmanagement legt, wird hier sicherlich zustimmen :)

Das ganze kann man selber hosten, aber auch hosten lassen, so nehmen wir z.B. das Angebot von CvsDude.com

Integration von Visual Studio

Wer mit SVN was zutun hat, wird meist auch an TortoiseSVN nicht vorbeikommen. Um eine Integration ins Visual Studio zu bekommen bedarf es noch AnkhSvn.
Jetzt kommt noch was cooles: Wer die Tickets aus dem Trac direkt im Visual Studio bearbeiten möchte dem empfehle ich noch einen Blick auf den TrackExplorer zu werden - angelehnt ist dies sicherlich an den TeamExplorer vom Team System von Microsoft.

Wie sieht das ganze aus?

Trac:

Überblicksseiteimage

Browse Sourcecode (mit Änderungsverfolgung ähnlich Google Code)

image

Weitere Features:

  • Bugtracking/Tickets für WorkItems
  • Tagging
  • Wiki
  • Blog
  • RoadMap

SVN + Tortoise + AnkhSVN + Visual Studio:

Checkin/Checkout direkt im Solution Explorer:

image

image

Das Mergen ist zwar irgendwie im Defaultfall etwas doof, aber nix ist perfekt. Ansonsten ist es sehr nett in Visual Studio integriert. Diese Integration ist durch AnkhSvn hinzugekommen.

TracExplorer:

Das Beste wäre jetzt noch direkt aus dem Visual Studio beim Checkin Tickets auszuwählen und diese dann auf Closed (etc.) zu setzen. Ein Ansatz zeigt der TracExplorer, welcher sich auch nett in Visual Studio integriert:

image

Ticketsübersicht:

image

Bei einem Doppelklick öffnet sich im Visual Studio die Webseite zu diesem Ticket. Es gibt auch leider noch kein Contextmenü in dem man direkt aus dem Visual Studio den Status des Tickets ändern kann - nur mit dem Umweg über die Webseite.

Checkin mit Tickets?

Prinzipell ist dies mit Hilfe von Tortoise möglich, allerdings integriert es sich leider nicht in AnkhSvn, welches wir zum Checkin nutzen. Aber gute Ansätze sind da - und alles für 0€ Lizenzkosten - für Hobbyprojekte oder Open Source Sachen empfehlenswert.

Feedback
Kennt jemand vielleicht doch eine Möglichkeit direkt aus dem Visual Studio heraus Tickets aus dem Trac zu bearbeiten und Checkins damit zu verknüpfen? Es ist kein "dringendes" Feature, aber nett wäre es schon. Hat sonst jemand noch Erfahrungen mit Open Source Tools + Visual Studio gemacht?


Written by Robert Muehsig

Software Developer - from Saxony, Germany - working on primedocs.io. Microsoft MVP & Web Geek.
Other Projects: KnowYourStack.com | ExpensiveMeeting | EinKofferVollerReisen.de