[[TOC]] = Using Trac for NCCOOS Projects = This page describes how to use the Trac System for projects run by NCCOOS. It contains general how-to notes for getting started and day-to-day details of Trac focused on working in a team and/or maintaining a project as a team-leader. Add to this page as you find useful info and how-tos related to Trac and SVN. == Trac System == Trac is a '''minimalistic''' approach to '''web-based''' management of '''software projects'''. Its goal is to simplify effective tracking and handling of software issues, enhancements and overall progress. By integrating web-based documentation tool (wiki) with bug tracking or enhancement features (tickets), and code repository, the Trac System allows distributed teams of people to collaborate remotely on a software and documentation project. == For Team Members == === Tickets === * Change the status of a ticket from 'new' to 'accepted' when you start work on the ticket. It's fine to start work, drop it and come back to the ticket later. * Make use of TracLinks in the original description of the ticket to refer to other tickets and to wiki documentation. === Modifying Code === * [wiki:WikiStart/aTracSprintSVNCommit Getting Code in and out of SVN] -- linux commands and TortoiseSVN -- Sprint Notes * [http://svnbook.red-bean.com/en/1.5/svn.tour.importing.html Get Data in (svn import)] -- from Red-Bean * [http://svnbook.red-bean.com/en/1.5/svn.tour.initial.html Initial checkout (svn copy)] -- from Red-Bean * [http://svnbook.red-bean.com/en/1.5/svn.tour.cycle.html Typical Work Cycle (svn commit)] -- from Red-Bean == For the Project Leader(s) == * [wiki:WikiStart/aTracSprintSVNDemo Creating a Subversion (SVN) repository] -- Sprint Notes * [wiki:WikiStart/aTracSprintTracDemo Setting up Trac components and projects] -- Sprint Notes * Tie tickets, code versions, and wiki documentation together using TracLinks * Some of the [http://trac.secoora.org/visual/wiki/TracLingo Trac Lingo] is explained by Jesse Cleary. * [wiki:WikiStart/aTracAddUser Add a user to Trac and SVN] -- Chris and Sara Notes * [http://trac.nccoos.org/portal/wiki/ProjectNav ProjecNav] How-to Display Top Level Projects on Trac === Milestones === * For small projects, use a single Milestone to define the project. Breakdown the project into a collection of tickets that are in the 'Task' Category and assign them to the milestone. When a new tasks are added, be sure to mark them as part of this milestone. * Use a short paragraph describing the milestone's overall objective. Then create tickets for each item of the to-do list with Category set to Task for each. === Wiki === * For the larger project, use several milestones. Add a wiki item for the project and link the relevant milestones into the wiki text. * Use the Trac wiki for software development and collaborative documents. Use the nccoos.org for more general info. == Resources == * [http://scm.opendap.org:8090/trac/wiki/OPeNDAPTrac OpenDAP Trac Guidelines] Much of the NCCOOS Guide was prompted by OpenDAP's organization so this info will look familiar if you've read down this far. * TracGuide -- Built-in Documentation -- The Trac User and Administration Guide with useful info like WikiFormatting, WikiMacros, and TracLinks * [http://projects.edgewall.com/trac/ The Trac project] -- Trac Open Source Project * [http://subversion.tigris.org/ Subversion] -- Open source version control system * [http://svnbook.red-bean.com/ Version Control with Subversion] -- A free online book about Subversion published by [http://www.oreilly.com/catalog/0596004486/ O'Reilly Media] * [http://tortoisesvn.tigris.org/ TortoiseSVN]-- A Subversion client, implemented as a windows shell extension