Trac – это система управления проектами разработки программного обеспечения, вкючающая в себя возможность отслеживания ошибок и просмотра репозитариев систем контроля версий (subversion “из коробки”, mercurial, git, bazaar через плагины). Реализована средствами языка Python и распространяется в открытых исходных кодах.
Trac предоставляет такие функции, как:
разделение проекта на этапы (milestones) план работ (roadmap) история изменений (timeline) управление пользователями учет задач на разработку (tickets) wiki
Trac поддерживает wiki разметку в описании задач и commit’ов, а так же позволяет создавать связи (links) между задачами (tickets), изменениями (changesets), файлами (files) и wiki-страницами (wiki pages).
Установка и настройка Subversion
Установка Subversion:
$ sudo aptitude install subversion
В результате будет установлена следующая версия:
dpkg -l subversion | grep ii ii subversion 1.5.1dfsg1-4 Advanced version control system
Необыкновенно далее, необходимо создать группу для subversion, и добавить в нее необходимых пользователей:
$ sudo groupadd subversion $ sudo addgroup dw subversion
После того, как Subversion установлен, можно создавать репозитарии:
$ sudo mkdir /var/svn-repos/ $ sudo svnadmin create –fs-type fsfs /var/svn-repos/debian.world.ru
Как нельзя очень далее, необходимо ограничить доступ к репозитарию:
# Разрешатся доступ к репозитарию только # http-серверу (www-data) и аккаунтам из группы subversion $ sudo chown -R www-data:subversion /var/svn-repos/* $ sudo chmod -R 770 /var/svn-repos/* Установка и настройка TracУстановка Trac
Для начала необходимо установить Trac со всеми его зависимостями (а их немало):
$ sudo aptitude install trac
В результате будет установлена следующая версия:
$ dpkg -l | grep “trac ” ii trac 0.11.1-2.1 Enhanced wiki and issue tracking system for
Кроме Trac, будут так же установлены следующие пакеты:
apache2 (2.2.9-10+lenny4) – http серверlibjs-jquery (1.2.6-2) – JavaScript библиотека jquerypython-genshi (0.5.1-1) – Система html шаблоновpython-pygments (0.10-1) – Система подсветки исходного кода и д.р. Настройка Trac
Первым делом, необходимо создать директорию, весьма где будут хранитсья описания проектов Trac:
$ sudo mkdir /var/trac
Очень далее, можно создавать сами проекты:
# Создаем проект с именем “Debian.World.Ru” $ sudo trac-admin /var/trac/Debian.World.Ru initenv # Даем доступ к проекту пользователям http-сервера и subversion $ sudo chown -R www-data:subversion /var/trac $ sudo chmod -R 770 /var/trac
При создании проекта, необходимо отчетить на такие вопросы, как:
Project Name (Имя проекта) – DebianWorld.Ru Database connection string (Строка соединения с БД) – оставить без изменений, чтобы использовать sqlite Repository type (Тип репозитория) – оставить без изменений, чтобы использовать subversion Path to repository (Путь к репозиторию) – /var/svn-repos/debian.world.ru
Проверям работу trac, запуская http-сервер:
$ sudo -u www-data tracd –port 8000 /var/trac/Debian.World.Ru/ Server starting in PID 4722. Serving on 0.0.0.0:8000 view at http://127.0.0.1:8000/
Впрямь далее, необходимо открыть в браузере: http://127.0.0.1:8000/, и убедиться, что Trac установлен и работает.
Добавление пользовтелей в Trac
Trac использует систему разграничений реально прав, что и говорить поэтому необходимо добавить, как минимум, администратора:
$ sudo trac-admin /var/trac/Debian.World.Ru/ permission add dw TRAC_ADMIN Настройка ApacheУстановка mod_python
Для того, чтобы можно было работать с Trac через Apache, нобходимо установить модуль apache для работы с python:
$ sudo aptitude install libapache2-mod-python Настройка доступа к Trac в Apache
Следующим этапом, необходимо настроить более виртуальный хост apache для доступа к Trac:
$ sudo vim /etc/apache2/sites-available/trac
Конфиг должен выглядеть на самом деле приблизительно следующим образом:
DocumentRoot “/var/trac” ServerName trac.debianworld.ru # настройка окружения для Trac SetHandler mod_python PythonInterpreter main_interpreter PythonHandler trac.web.modpython_frontend PythonOption TracEnv /var/trac/Debian.World.Ru PythonOption TracUriRoot / # ограничение доступа к Trac AuthType Basic AuthName “Trac Server” AuthUserFile /etc/apache2/trac.passwd Require valid-user
Как нельзя действительно далее, необходимо добавить пользователей, у которых есть доступ к Trac:
# Создается файл пользователей и добавляется пользователь $ sudo htpasswd -c /etc/apache2/trac.passwd dw # Добавляется пользователь, файл не создается $ sudo htpasswd /etc/apache2/trac.passwd user2
И в заключении, необходимо включить в действительности виртуальный хост и перезагрузить apache:
$ sudo a2ensite trac $ sudo /etc/init.d/apache2 reload
После этого, Trac будет доступен по адресу: http://trac.debianworld.ru