Trac
# Trac

Trac ist ein freies, webbasiertes Projektmanagement-Werkzeug zur Softwareentwicklung. Es enthält eine webbasierte Oberfläche zum lesenden Zugriff auf das Projektarchiv (Subversion oder Git), einen Bugtracker zum Verwalten von Programmfehlern und Erweiterungswünschen sowie ein Wiki, das es erlaubt, diese formalisierten Informationen unter einem gemeinsamen Dach zu präsentieren und mit weniger strukturierten Inhalten z. B. zur Dokumentation anzureichern.

## Komponenten

Trac ist in der Programmiersprache Python implementiert und kann unter anderem via WSGI, mod python, CGI oder FastCGI betrieben werden. Trac ist modular geschrieben und kann durch Plug-ins erweitert werden. Das integrierte Wiki benutzt eine auf der MoinMoin-Syntax basierende Auszeichnungssprache. Für speziell gekennzeichnete Inhalte werden auch andere Auszeichnungssprachen unterstützt (reStructuredText, Textile, HTML). Neben Subversion existieren auch Erweiterungen für andere Versionsverwaltungssysteme, wie Mercurial, Darcs, Perforce und git. Daneben gibt es inoffizielle Erweiterungen für Monotone, SVK und Bazaar.
Trac beinhaltet aber auch einen eigenen Daemon als Webserver.

## Einsatzgebiete und Verbreitung

Zwar ist Trac primär für den Einsatz in Software-Projekten gedacht, kann aber auch anderweitig (z. B. als reines Wiki oder Issue-Tracking-System) verwendet werden. Auch die Übersetzung von Büchern lässt sich mittels Trac koordinieren.
Trac hat inzwischen recht weite Verbreitung gefunden, im Trac-Wiki werden ca. 200 Sites geführt, die öffentlichen Zugang zu ihrem Trac-System bieten. Die hohe Integration von Codebasis, Wiki-Projektseiten und Bugtracker macht die Anwendung flüssiger und fördert die Vernetzung im Projekt. Trac ist ab Version 0.12 internationalisiert, d. h. die Benutzeroberfläche kann mit den Babel-Werkzeugen lokalisiert werden. Ende 2010 waren 13 Lokalisierungen zu mindestens 97 % vollständig.
Es gibt mindestens zwei aktiv entwickelte Projekte, Redmine und dessen Fork OpenProject, die wesentliche Funktionalitäten von Trac übernommen haben und mit eigenen Zielsetzungen weiterentwickeln. Der jüngste, direkte Fork „Apache Bloodhound“ wurde zwar offiziell noch nicht eingestellt, erhält aber seit Ende 2014 keine Updates.
Agilo for Trac ist eine kommerzielle Erweiterung von Trac um Scrum-Funktionalitäten.