Trac

Trac - strona projektu
Trac-Hacks - dodatki, rozszerzenia, itp.
Tłumaczenie terminologii

System zarządzania projektami, śledzenia zmian i zgłaszania błędów

zintegrowane wiki (dokumentacja projektu)

zgłoszenia (ticket subsystem, bug/issue tracking system), etapy, komponenty (raporty, śledzenie postępów)

interfejs do systemów kontroli wersji (SVN browser)

historia (Timeline)

plan prac (roadmap) - harmonogramy

RSS

pluginy

Przykłady: Trac Pidgin RPM

Wiki

WikiFormatting (v0.11)

Wiki Page Names (v0.11)

CamelCase, [wiki:CamelCase], !CamelCase

tworzenie nowych stron

TracLinks (v0.11): strony wiki, opisy zgłoszeń i etapów, komentarze zatwierdzonej rewizji SVN

wiki CamelCase, wiki:CamelCase, [CamelCase Opis linku]

strona nadrzędna [..]

zgłoszenia #1 lub ticket:1

zakresy: ticket:5000-6000, ticket:1,150

komentarze do zgłoszeń - comment:1:ticket:2

raporty {1} lub report:1

etapy milestone:1.0

załączniki attachment:example.tgz, attachment:attachment.1073.diff:ticket:944

rewizje r1, [1], changeset:1 lub [1/trunk], changeset:1/trunk

komentarze rewizji r1:3, [1:3] lub log:@1:3, log:trunk@1:3, [2:5/trunk]

różnice diff:@1:3, diff:plugins/0.12/mercurial-plugin@9128:9953, diff:tags/trac-0.9.2/wiki-defaulttags/trac-0.9.3/wiki-default lub diff:trunk/trac@3538sandbox/vc-refactoring@3539

pliki

source:trunk/COPYING

source:/trunk/COPYING@200 (rewizja 200)

source:/trunk/COPYING@200#L25 (rewizja 200, linia 25)

aliasy browser:, repos:

source:/some/file@123:10-20,100,103#L99

historia timeline:2008-01-29, timeline:2008-01-29T15:48, timeline:2008-01-29T15:48Z, timeline:2008-01-29T16:48+01

WikiMacros (v0.11)

Historia/TimeLine

Automatycznie tworzona historia, zawierająca inf. o:

Zmianach stron wiki

Tworzeniu/zmianie/zamknięciu zgłoszeń

Zmianach w repozytorium

Zakończonych etapach (milestones)

Opcje:

RSS

Filtrowanie informacji: wzgl. czasu, autora zmian, itp.

Przeglądarka źródeł/Repository Browser

Wygodny w użyciu i przejrzysty eksplorator repozytorium SVN:

przeglądanie poszczególnych rewizji

ostatnia/poprzednia/następna

porównywanie zmian (Change Set)

jeden po drugim

obok siebie

Dziennik wersji (Revision Log)

Plan prac/Road map

Harmonogram prac podzielony na etapy (główne zadania). Każdy etap zawiera szereg związanych z nim zadań (zgłoszeń/tickets) do wykonania.

etapy (milestones) - ich cele i opis (formatowanie wiki)

grupowanie i statystyki zgłoszeń dla planu prac jak i dla poszczególnych etapów

dodawanie/usuwanie/modyfikacja (Admin Panel)

iCalendar

Zgłoszenia/Ticket system

Zgłoszenie jest pojedynczym zadaniem do wykonania:

zadania do wykonania (task), prośby o nowe funkcje (enhancement), zgłaszanie błędów (defect) i problemów, uwagi, pytania

zgłoszenie zlecone konkretnej osobie (owner)

zamknięcie zgłoszenia (resolve, closed, fix) - wykonanie zadania, naprawienie błędu, wdrożenie rozszerzenia

Cykl życia zgłoszenia: new, assign, [reassign], accept, close, [fix], reopen, itp.

wszystkie zgłoszenia można edytować, przydzielać właścicielom, określać priorytety, dyskutować/komentować w każdej chwili

opis, komentarze, dyskusja

linki Traca oraz stron wiki pozwalają nawiązać do innych problemów, zdłoszeń, plików, rewizji, stron wiki, itd.

Atrybuty zgłoszeń

Temat (Summary) — Krótki opis.

Zgłaszający (Reporter) — autor zgłoszenia

Typ (Type) — rodzaj np. defect (błąd), enhancement (rozszerzenie), request, task (zadanie)

Component — moduł lub podsystem projektu

Version

Keywords — przydatne przy wyszukiwaniu i tworzeniu raportów

Priority — trivial -> blocker.

Etap (Milestone) — When this issue should be resolved at the latest.

Przypisz do (Assigned to/Owner) — wykonawca

Cc — przekazanie kopii do zainteresowanych osób

Resolution — powód zamknięcia: fixed, invalid, wontfix, duplicate, worksforme.

Status — aktualny status: assigned, closed, reopened.

Description — Szczegółowy opis.

klasyfikacją ważności (severity)

inne: można definiować własne (trac.ini), np. system operacyjny (lista wyboru: Windows, Linux, Mac)

Wartości atrybutów zgłoszeń można edytować w panelu administracyjnym.
Możliwe jest tworzenie nowych atrybutów (trac.ini)

Przebieg prac nad zgłoszeniem/Workflow

Przyklad (v0.11)

Żródło: http://trac.edgewall.org/chrome/common/guide/basic-workflow.png

Inne przykłady

Raporty/View Tickets

Zdefiniowane raporty (Available Reports)

Custom Query - dodawanie filtrów zgłoszeń i określanie wyświetlanych kolumn, zapis zapytania

zapytania mogą dotyczyć każdego atrybutu zgłoszeń: status, temat, właściciel, itd

pola bazy danych: id, type, time, changetime, component, severity, priority, owner, reporter, cc, version, milestone, status, resolution, summary, description, keywords

Tworzenie nowych raportów (zapytań)

QueryLanguage - także do tworzenia linków

TicketQuery Macro

zapytania SQL (SELECT)

[query:?status=new&status=assigned&status=reopened&group=owner Assigned tickets by owner]
[[TicketQuery(version=0.6|0.7&resolution=duplicate)]]

Status zgłoszenia i rozwiązania

statusy:

new

assigned

closed

reopened

istnieje możliwość definiowania własnych statusów oraz ich zależności (trac.ini)

rozwiązania (resolution):

fixed

invalid

wontfix

duplicate

worksforme

SVN & Trac

Odnośniki ze stron wiki oraz opisów zgłoszeń i etapów do kodu, rewizji, komentarzy oraz różnic w plikach dzięki TracLinks

Integracja z SVN poprzez komentarze podawane przy zatwierdzaniu nowej rewizji

Działa składnia Wiki i TracLinks

Zamknięcie zadania poleceniem: close, closed, closes, fix, fixed, fixes

Odnośnik do zadania - status się nie zmienia, polecenia: references, refs, addresses, re, see

W obu powyższych przypadkach przesłany komentarz zostaje dodany do podanego zgłoszenia

Przykłady:

svn commit -m "Naprawiono blad. Fixes #1 & #2. "
svn commit -m "Poprawki związane ze zgłoszeniem re #1"
svn commit -m "Blah Blah, Ticket #587 status: Fixed"
svn commit -m "This will close #10 and #12, and add a note to #12."

Składnia:

polecenie #1
polecenie #1 & #2
polecenie #1 and #2
polecenie ticket:1
polecenie ticket:1 & ticket:2
polecenie ticket:1 and ticket:2