Notes on Trac

Notes on Trac

Trac is a lightweight, open source issue tracking and project management tool that builds on Subversion by

adding flexible web-based issue tracking, wiki, and reporting functionalities.

Install trac on Ubuntu:

http://trac.edgewall.org/wiki/0.11/TracOnUbuntu

Install Software Packages

sudo apt-get install apache2 libapache2-mod-python libapache2-svn python-setuptools subversion python-subversion

You may need install python Easy Install first.(http://peak.telecommunity.com/DevCenter/EasyInstall)

python ez_setup.py

sudo easy_install Trac

Setting Up a Trac Project

sudo mkdir -p /var/data/trac

trac-admin /var/data/trac/myproject initenv

sudo chown -R www-data:www-data /var/data/trac

By default, Trac will use an embedded SQLite database, which is sufficient for small projects.

Running Trac on the Standalone Server

tracd --port 8000 /var/data/trac/myproject

Then Your projects will be available on separate URLs: http://localhost:8000/myproject.

or:

python tracd -p 8000 \

--auth project1,/data/svn/svn-digest -auth-file,"Subversion repository" \

--auth project2,/data/svn/svn-digest -auth-file,"Subversion repository" \

/data/trac/project1 /data/trac/project2

Integrate Trac with Apache Server

You can set up authentication to use the same Apache basic or digest authentication that you use for your Subversion installation: simply use the same authentication type (AuthType), realm name (AuthName), and authentication file (AuthUserFile or AuthDigestFile).

LoadModule python_module modules/mod_python.so

<Location /trac>

SetHandler mod_python

PythonInterpreter main_interpreter

PythonHandler trac.web.modpython_frontend

PythonOption TracEnvParentDir /var/data/trac

PythonOption TracUriRoot /trac

PythonOption PYTHON_EGG_CACHE /tmp

</Location>

# use the following for one authorization for all projects

<LocationMatch "/trac/[^/]+/login">

AuthType Basic

AuthName "Myproject Repository"

AuthUserFile /etc/apache2/myproject.passwd

Require valid-user

</LocationMatch>

Restart Apache: sudo apache2 -k restart

Access your project: https://servername/trac/myproject

Administrating the Trac Site

trac-admin /var/data/trac/myproject permission add yuanyun TRAC_ADMIN

Trac Plugins

http://trac.edgewall.org/wiki/TracPlugins

Plugins are packaged as Python eggs. To use egg based plugins in Trac, you need to have setuptools installed.

easy_install http://trac-hacks.org/svn/usermanagerplugin/0.11

If Trac reports permission errors after installing a zipped egg and you would rather not bother providing a egg cache directory writable by the web server, you can get around it by simply unzipping the egg. Just pass --always-unzip to easy_install:

easy_install --always-unzip TracSpamFilter-0.2.1dev_r5943-py2.4.egg

You should end up with a directory having the same name as the zipped egg (complete with .egg extension) and containing its uncompressed contents.

Enabling the plugin

We can use trac web admin or edit trac project configuration file - trac.ini.

[components]

tracspamfilter.* = enabled

Tailoring the Trac Web Site: Using the Wiki Function

Headings

Headings and subheadings can be written using "=" and "==,"

Lists

You can use "*" for unordered lists, as shown here:

* Cats

* Burmese

* Siamese

Preformatted text can be displayed using {{{...}}}:

Trac tickets:

Trac issue tickets can be referenced using either the "ticket" link type (ticket:123) or the # shorthand form (#123).

Source code files:

Trac provides many ways to set up links to your source code. At the simplest level, files in the source code repository can be referred to using the "source:"

Using the Trac Ticket Management System

Creating a New Ticket

Customizing Trac Ticket Fields

Trac lets you customize the ticket screen in via its Admin pages.

Browsing the Source Code Repository

Using RSS and ICalendar


Useful plugins:

http://trac-hacks.org/wiki/UserManagerPlugin

http://trac-hacks.org/wiki/StractisticsPlugin

http://trac-hacks.org/svn/masterticketsplugin/0.11/

http://trac-hacks.org/wiki/TagsPlugin

http://stackoverflow.com/questions/194361/what-are-some-recommended-plugins-for-trac

http://trac-hacks.org/wiki/TicketImportPlugin


Post a Comment

Labels

Java (159) Lucene-Solr (112) Interview (61) All (58) J2SE (53) Algorithm (45) Soft Skills (38) Eclipse (33) Code Example (31) Linux (25) JavaScript (23) Spring (22) Windows (22) Web Development (20) Tools (19) Nutch2 (18) Bugs (17) Debug (16) Defects (14) Text Mining (14) J2EE (13) Network (13) Troubleshooting (13) PowerShell (11) Chrome (9) Design (9) How to (9) Learning code (9) Performance (9) Problem Solving (9) UIMA (9) html (9) Http Client (8) Maven (8) Security (8) bat (8) blogger (8) Big Data (7) Continuous Integration (7) Google (7) Guava (7) JSON (7) Shell (7) ANT (6) Coding Skills (6) Database (6) Lesson Learned (6) Programmer Skills (6) Scala (6) Tips (6) css (6) Algorithm Series (5) Cache (5) Dynamic Languages (5) IDE (5) System Design (5) adsense (5) xml (5) AIX (4) Code Quality (4) GAE (4) Git (4) Good Programming Practices (4) Jackson (4) Memory Usage (4) Miscs (4) OpenNLP (4) Project Managment (4) Spark (4) Testing (4) ads (4) regular-expression (4) Android (3) Apache Spark (3) Become a Better You (3) Concurrency (3) Eclipse RCP (3) English (3) Happy Hacking (3) IBM (3) J2SE Knowledge Series (3) JAX-RS (3) Jetty (3) Restful Web Service (3) Script (3) regex (3) seo (3) .Net (2) Android Studio (2) Apache (2) Apache Procrun (2) Architecture (2) Batch (2) Bit Operation (2) Build (2) Building Scalable Web Sites (2) C# (2) C/C++ (2) CSV (2) Career (2) Cassandra (2) Distributed (2) Fiddler (2) Firefox (2) Google Drive (2) Gson (2) How to Interview (2) Html Parser (2) Http (2) Image Tools (2) JQuery (2) Jersey (2) LDAP (2) Life (2) Logging (2) Python (2) Software Issues (2) Storage (2) Text Search (2) xml parser (2) AOP (1) Application Design (1) AspectJ (1) Chrome DevTools (1) Cloud (1) Codility (1) Data Mining (1) Data Structure (1) ExceptionUtils (1) Exif (1) Feature Request (1) FindBugs (1) Greasemonkey (1) HTML5 (1) Httpd (1) I18N (1) IBM Java Thread Dump Analyzer (1) JDK Source Code (1) JDK8 (1) JMX (1) Lazy Developer (1) Mac (1) Machine Learning (1) Mobile (1) My Plan for 2010 (1) Netbeans (1) Notes (1) Operating System (1) Perl (1) Problems (1) Product Architecture (1) Programming Life (1) Quality (1) Redhat (1) Redis (1) Review (1) RxJava (1) Solutions logs (1) Team Management (1) Thread Dump Analyzer (1) Visualization (1) boilerpipe (1) htm (1) ongoing (1) procrun (1) rss (1)

Popular Posts