- Sign in
- Register
- Home
- Projects
- Help
- Overview
- Download
- Activity
- Roadmap
- Issues
- News
- Wiki
- Forums
- Repository
Документация по Redmine на русском языке¶
Оригинал: Guide guide v.48
Руководство по установке¶
- Установка Redmine
- Настройка Email
- Обновление существующей установки
- Переход с других систем
Руководство администратора¶
- Управление проектами
- Управление пользователями
- Управление группами
- Роли и права доступа
- Система отслеживания задач
- Пользовательские поля
- Справочники
- Настройки приложения
Расширенные настройки¶
- Настройка репозиториев
- Получение электронной почты
- Отправка оповещений
- LDAP-аутентификация
Руководство пользователя¶
- Приступая к работе
- Учетные записи пользователей
- Профили пользователей
- Вход
- Регистрация
- Проекты
- Поиск
- Обзор проекта
- Активность проекта
- Отслеживание задач
- Список задач
- Журнал изменений
- Сводка по задачам
- Оперативный план
- Обзор версий
- Список задач
- Отслеживание времени
- Трудозатраты — подробно
- Трудозатраты — отчет
- Диаграмма Ганта
- Календарь
- Новости
- Документы
- Файлы
- Форум
- Вики
- Хранилище
- Статистика
- Настройки проекта
- Файлы прикрепляемые к Redmine ресурсам
- Оформление текстов
Updated by Ivan Bagaev about 7 years ago
· 23 revisions
Powered by Redmine © 2006-2023 Jean-Philippe Lang
- Sign in
- Register
- Home
- Projects
- Help
- Overview
- Download
- Activity
- Roadmap
- Issues
- News
- Wiki
- Forums
- Repository
Руководство
Оригинал: User Guide v.12
Руководство пользователя¶
- Приступая к работе
- Учетные записи пользователей
- Вход
- Регистрация
- Проекты
- Поиск
- Обзор проекта
- Активность проекта
- Отслеживание задач
- Список задач
- Журнал изменений
- Сводка по задачам
- Оперативный план
- Обзор версий
- Список задач
- Отслеживание времени
- Затраченное время — подробно
- Затраченное время — отчет
- Диаграмма Ганта
- Календарь
- Новости
- Документы
- Файлы
- Форум
- Вики
- Хранилище
- Статистика
- Настройки проекта
- Файлы прикрепляемые к Redmine ресурсам
- Оформление текстов
Updated by Ruslan Khasanov about 10 years ago
· 13 revisions
Powered by Redmine © 2006-2023 Jean-Philippe Lang
Redmine-doc
Инструкция redmine
- Общий функционал
- Фильтры
- [Использование фильтров] (#Filter_Using)
- [Сохранение фильтров] (#Filter_Saving)
- Задачи и подзадачи
- [Как обновить тему задачи] (#Update_Subject)
- [Как назначить родительские задачи] (#Parents_Task)
- [Экспорт задачи в систему контроля версий] (#Export)
- [Работа с подзадачами] (#Subtask)
- Вкладки
- [Оперативный план] (#Plan)
- Диаграмма Ганта
- [Календарь] (#Calendar)
- [Новости] (#News)
- [Документы] (#Docs)
- [Wiki] (#Wiki)
- [Файлы] (#Files)
- [Хранилище] (#Storage)
- [Настройки] (#Setting)
- Дополнительная информация
- [Разница «Изначальной оценки времени» и «Оценки времени»] (#VS)
- [Английская + русская справка] (#En_Rus)
Общий функционал
Redmine представляет собой веб-приложение, используемое для управления проектами и задачами. Также, оно часто используется для отслеживания ошибок.
Данное веб-приложение предоставляет следующие возможности:
- Ведение нескольких проектов одновременно;
- Диаграммы Ганта и календарь;
- Ведение новостей проекта, документов и управление файлами;
- Оповещение об изменениях с помощью RSS-потоков и электронной почты;
- Wiki для каждого проекта;
- Форумы для каждого проекта;
- Учёт временных затрат;
- Лёгкая интеграция с системами управления версиями (в данном случае используется система SVN).
Фильтры
Использование фильтров
Фильтр представляет собой набор свойств, задаваемых пользователем, которые используются для выделения из общего списка элементов с установленными свойствами.
В Redmine фильтры используются для выделения из общего списка задач тех, которые необходимы пользователю на данный момент.
Для того чтобы получить доступ к задачам, пользователю необходимо:
- На верхней панели выбрать Проекты;
- Из списка проектов выбрать нужный;
- Из списка вкладок, располагающегося под названием проекта, выбрать вкладку Задачи;
- Из выпадающего списка Добавить фильтр выбрать все необходимые параметры фильтрации задач и нажать Применить.
После выполнения данной последовательности действий список задач выбранного проекта обновится, и в нем останутся лишь задачи, удовлетворяющие заданным параметрам сортировки.
В случае, если у пользователя отпала необходимость в использовании фильтра, он должен нажать Очистить, после чего все заданные параметры фильтрации будут сброшены.
Сохранение фильтров
Если пользователь часто использует один и тот же набор параметров фильтрации, он может создать свой фильтр, который будет включать все необходимые параметры.
Для того чтобы создать свой набор параметров фильтрации, пользователю необходимо:
- Нажать на кнопку Сохранить, которая находится ниже панели Опции;
- В появившейся форме задать все необходимые параметры и указать имя набора параметров фильтрации;
- Нажать на кнопку Сохранить.
После сохранения созданный фильтр будет отображаться в выпадающем списке Добавить фильтр.
Задачи и подзадачи
Как обновить тему задачи
Для того чтобы обновить существующую тему задачи, пользователю необходимо:
- Выбрать проект, в котором располагается целевая задача, и зайти в саму задачу, щелкнув по ее названию;
- На нижней панели нажать кнопку Обновить;
- Внутри поля Изменить свойства нажать кнопку Больше;
- В появившемся поле изменить все необходимые данные (тему, описание и т.д.);
- Нажать кнопку Принять.
Как назначить родительскую задачу
Для того чтобы назначить родительскую задачу к уже существующей, необходимо:
- Выбрать проект, в котором располагается необходимая задача, и зайти в саму задачу, щелкнув по ее названию;
- На нижней панели нажать кнопку Обновить;
- В поле Родительская задача, находящееся внутри поля Изменить свойства, указать родительскую задачу (номер);
- Нажать кнопку Принять.
Экспорт задачи в систему контроля версий
Для того чтобы выгрузить одну или несколько задач в систему контроля версий, пользователю необходимо:
- Выбрать проект, в котором располагается необходимая задача/задачи;
- Отметить задачи, которые должны быть выгружены в систему контроля версий;
- Под списком задач в графе Экспортировать в нажать на СSV;
- Задать опции экспортирования (Экспортировать отмеченные задачи/экспортировать все задачи, экспортировать описание да/нет) и нажать Export;
- Закачанный файл открыть с помощью редактор Notepad++;
- Изменить кодировку текста. Для этого выбрать на верхней панели Encoding|Convert to ANSI и сохранить файл File|Save (либо использовать комбинацию клавиш Ctrl+S);
После выполнения предложенной последовательности действий данный файл можно открыть с помощью программы Microsoft Office Excel.
Работа с позадачами
Для задач пользователь может назначать подзадачи (дополнительные задачи). Для того чтобы создать подзадачу, пользователю необходимо:
- В поле параметров основной задачи в графе Подзадачи нажать Добавить;
- Заполнить все необходимые поля подзадачи;
- Нажать Создать,
либо
- Нажать Создать и продолжить в случае, если пользователь хочет создать несколько подзадач.
Затраченное время родительской задачи и ее подзадач суммируется и прописывается в графу Затраченное время родительской задачи. Даты начала и окончания работ в родительской задаче проставляются по самой ранней дате начала работ для родительской задачи и подзадач и по самой поздней дате окончания работ для родительской задачи и подзадач.
Вкладки
Вкладка «Оперативный план»
Возможность создания оперативного плана является встроенной возможностью Redmine. Оперативный план неразрывно связан с версиями проекта. Он предназначен для отображения мини-отчета о текущем состоянии проекта. Данный отчет включает следующие пункты:
- Название оперативного плана;
- Краткое описание задач;
- Количество открытых и закрытых задач (и их процентное соотношение);
- Связанные задачи;
- Строку состояния (связанную с закрытыми задачами).
Данные пункты отображаются для каждой версии проекта.
Для того чтобы отобразить на верхней панели вкладок вкладку Оперативный план, пользователю необходимо:
- В выпадающем списке проектов выбрать проект, для которого нужно создать оперативный план;
- Выбрать вкладку Настройки;
- Внутри вкладки Версии нажать на кнопку Новая версия;
- Заполнить все необходимые поля в появившейся форме и нажать на кнопку Создать.
После того, как была создана версия проекта, на панели вкладок автоматически будет отображаться вкладка Оперативный план. Работа с оперативным планом осуществляется внутри одноименной вкладки.
Вкладка «Диаграмма Ганта»
Для того чтобы просмотреть диаграмму Ганта для какого-либо проекта, пользователю необходимо:
- Зайти во вкладку Проекты и выбрать необходимый проект;
- На верхней панели вкладок выбрать вкладку Диаграмма Ганта.
Диаграмма Ганта представляет собой столбчатую диаграмму (гистограмму), столбцы которой ориентированы вдоль оси времени.
Диаграмма Ганта используется для того, чтобы отслеживать активность по проекту. В левой части отображается список задач, сверху – дата. На самой диаграмме отображается состояние каждой задачи проекта в виде горизонтального столбца.
Пользователь может задавать фильтры для задач, которые будут отображены на диаграмме (более подробно фильтры описаны в разделе 2 данной инструкции). Кроме того, пользователь может задавать временной отрезок, который берется в расчет при построении диаграммы. Для этого ему нужно:
- Установить количество месяцев;
- Установить начальную дату отсчета (выбрать месяц и год из выпадающих списков);
- Нажать Применить.
После этого диаграмма обновится, и на ней будет отображено состояние задач выбранного проекта за указанный промежуток времени.
Если пользователь задал не тот период времени, который был ему нужен, он должен нажать Очистить, после чего повторить все пункты построения диаграммы, указав необходимый ему период времени. Панель, содержащая в себе все перечисленные выше поля,кнопки и выпадающие списки представлена на рисунке ниже.
Вкладка «Календарь»
Для того чтобы просмотреть календарь для какого-либо проекта, пользователю необходимо:
- Зайти во вкладку Проекты и выбрать необходимый проект;
- На верхней панели вкладок выбрать вкладку Календарь.
Календарь представляет собой сетку из ячеек, каждая из которых располагается на пересечении номера недели (левая панель календаря) и наименования дня (верхняя панель календаря). Соответственно, каждая ячейка – это один день месяца.
Внутри ячейки располагается число (дата) и задачи, которые были активны в этот день. Если навести курсор мыши на название задачи в календаре, то пользователь получит более подробную информацию о ней, а именно:
- Номер и наименование задачи;
- Проект, к которому относится задача;
- Ее текущий статус;
- Дата начала задачи;
- Дата окончания выполнения задачи (при наличии);
- Кому назначена данная задача;
- Приоритет данной задачи.
Пользователь может задавать фильтры для задач, которые будут отображены на календаре (более подробно фильтры описаны в разделе 2 данной инструкции). Кроме того, пользователь может задавать временной отрезок, который берется в расчет при отображении календаря. Для этого ему нужно:
- Установить количество месяцев;
- Установить начальную дату отсчета (выбрать месяц и год из выпадающих списков);
- Нажать Применить.
После этого календарь обновится, и на нем будет отображено состояние задач выбранного проекта за указанный промежуток времени.
Если пользователь задал не тот период времени, который был ему нужен, он должен нажать Очистить, после чего повторить все пункты создания календаря, указав необходимый ему период времени.
Вкладка «Новости»
Для того чтобы просмотреть новости какого-либо проекта, пользователю необходимо:
- Зайти во вкладку Проекты и выбрать необходимый проект;
- На верхней панели вкладок выбрать вкладку Новости.
Внутри данной вкладки представлена лента новостей выбранного проекта. К каждой новости пользователи могут добавлять комментарии. Каждая новость содержит себе следующие элементы:
- Заголовок;
- Описание;
- Резюме.
Вкладка «Документы»
Для того чтобы просмотреть документы, добавленные в какой-либо проект, пользователю необходимо:
- Зайти во вкладку Проекты и выбрать необходимый проект;
- На верхней панели вкладок выбрать вкладку Документы.
Внутри данной вкладки представлен список всех добавленных документов. Пользователю доступны следующие возможности:
- Добавление документа. Для того чтобы добавить новый документ, пользователю необходимо:
- Внутри необходимого проекта зайти во вкладку Документы;
- Нажать на кнопку Добавить документ, располагающуюся в правой части экрана;
- Заполнить форму нового документа. Она содержит следующие поля:
** Категория. В данном поле из выпадающего списка выбирается категория, к которой относится создаваемый документ.
** Заголовок (поле обязательно для заполнения).
** Описание. В данное поле вносится основной текст документа.
** Файл. Кроме того, к каждому документу можно добавить файл. - После заполнения формы, пользователю необходимо нажать Создать. В случае, если необходимость создания документа отпала, пользователю необходимо нажать на кнопку Отмена, располагающуюся справа от кнопки Создать.
- Редактирование документа. Для того чтобы редактировать документ, пользователю необходимо:
- Зайти в документ, который требуется отредактировать, кликнув по его названию в списке документов проекта;
- Нажать на кнопку Редактировать, располагающуюся в правой части экрана;
- Внести все необходимые изменения в документ и нажать Сохранить.
- Удаление документа. Для того чтобы удалить документ, пользователю необходимо:
- Зайти в документ, который необходимо удалить;
- Нажать на кнопку Удалить, располагающуюся в правой части экрана;
- Подтвердить удаление данного документ, нажав кнопку OK в появившемся диалоговом окне.
Вкладка «Wiki»
!!!
Вкладка «Файлы»
Для того чтобы просмотреть файлы, добавленные в какой-либо проект, пользователю необходимо:
- Зайти во вкладку Проекты и выбрать необходимый проект;
- На верхней панели вкладок выбрать вкладку Файлы.
Внутри данной вкладки представлен список всех добавленных документов. Пользователю доступны следующие возможности:
- Добавление файла. Для того чтобы добавить новый файл, пользователю необходимо:
-
Внутри необходимого проекта зайти во вкладку Файлы;
-
Нажать на кнопку Новый файл, располагающуюся в правой части экрана;
-
Заполнить форму нового файла. Она содержит следующие поля:
** Версия. В данном поле пользователю необходимо выбрать из выпадающего списка версию файла;
** Выбрать файл. В данном поле пользователю необходимо нажать на кнопку Выбрать файлы и загрузить все необходимые файлы, выбрав с любого локального диска компьютера пользователя. -
Нажать на кнопку Добавить.
- Удаление файла. Для того чтобы удалить файл, пользователю необходимо нажать на кнопку «Удалить», располагающуюся с правой стороны экрана в одной строке с целевым файлом.
- Скачивание файла. Для того чтобы скачать файл, пользователю необходимо нажать на его заголовок в списке файлов. После этого файл автоматически скачается на компьютер пользователя.
Вкладка «Хранилище»
Для того чтобы просмотреть хранилище какого-либо проекта, пользователю необходимо:
- Зайти во вкладку Проекты и выбрать необходимый проект;
- На верхней панели вкладок выбрать вкладку Хранилище.
Redmine обладает следующими возможностями:
- Отображать изменения в хранилище;
- Вести лог активности;
- Рисовать графики по количеству коммитов (обновлений версии) в хранилище.
Так же Redmine может управлять правами доступа к хранилищам на основе своих пользователей и их подписок к проектам, автоматически создавать хранилища для новых проектов. В хранилище можно заносить как отдельные файлы, так и папки. Файлы, как правило, группируются в директории.
Вкладка «Настройки»
Работа с вкладкой «Настройки» подробно описана в пункте «Вкладка «Оперативный план»»
Дополнительная информация
Разница Изначальной оценки времени и Оценки времени
Изначальная оценка времени — это количество времени, за которое предположительно должна быть решена поставленная задача. Эта величина устанавливается единожды — при постановке задачи, и в дальнейшем не меняется.
Оценка времени — это общее (суммарное) время, за которое в действительности была решена поставленная задача. При каждом обновлении задачи, пользователь должен заносить время, потраченное на решение данной задачи в графу Затраченное время. Сумма значений из этой графы и помещается в графу Оценка времени.
Английская + Русская справка
Redmine Guide: http://www.redmine.org/guide
Rdmine Guide Rus: http://www.redmine.org/projects/redmine/wiki/RusGuide
Время на прочтение
8 мин
Количество просмотров 20K
По мере увеличения числа вовлечённых в проект людей возникает необходимость как-то более эффективно организовывать и управлять их деятельностью. На начальном этапе для этой цели использовались Google-таблицы, но их возможности ограничены, и появилось желание перейти на новый уровень. Изучение доступных систем управления проектами показало, что из систем с открытым кодом Redmine наиболее продвинутая и по некоторым показателям обгоняет даже проприетарные системы.
Redmine, действительно, обладает большими возможностями: управление несколькими проектами, отслеживание ошибок, интеграция с репозиториями, перекрёстные ссылки на исправленные баги в коммитах и на коммиты в баг-репортах, назначение разных ролей пользователей в каждом проекте и т.д. Однако процедура установки довольна сложна, а для некоторых очень полезных функций требуется небольшая доработка или использование плагинов. Надеюсь, что предлагаемое ниже руководство поможет желающим использовать Redmine в своих проектах.
Компоненты
Система управления проектами Redmine
→ Официальный сайт
Основные возможности:
- ведение нескольких проектов
- система отслеживания событий (bug, feature)
- разные роли пользователей (менеджер, разработчик, репортер) по каждому проекту
- поддержка новостей, документов, файлов, wiki, форумов для каждого проекта
- интеграция с системами управления версиями (SVN, Git, Mercurial)
- уведомления о событиях по электронной почте
- возможность учёта времени работы
Система контроля версий Mercurial
→ Официальный сайт
Кросс-платформенная распределённая система управления версиями.
Также понадобится
Web-сервер и система управления базами данных. Использованы Mysql и Apache.
Установка
Инструкция составлена на основе полезной, но сильно устаревшей инструкции
HowTo Install Redmine 1.2.x with Mercurial and Subversion on Ubuntu Server 10.04.
Также использовалась официальная инструкция по установке
Redmine Installation Guide.
Предполагаем что у нас уже есть сервер с предустановленным на нём Ubuntu Server 16.04. Дальнейшие инструкции описывают установку системы управления и вспомогательного ПО.
Итак, начнём. Сначала устанавливаем LAMP server:
$ sudo tasksel install lamp-server
Во время установки понадобится ввести пароль root-пользователя базы данных MySQL (не путать с паролем root операционной системы).
Создаём базу данных MySQL и пользователя redmine для работы с ней. Вместо [password] вставляем желаемый пароль пользователя.
$ mysql -u root -p
(вводим пароль root базы данных MySQL)
> create database redmine character set utf8;
> create user 'redmine'@'localhost' identified by '[password]';
> grant all privileges on redmine.* to 'redmine'@'localhost';
> exit
Скачиваем Redmine со страницы www.redmine.org/projects/redmine/wiki/Download или командой
$ wget http://www.redmine.org/releases/redmine-3.3.3.tar.gz
Распаковываем Redmine в каталог /usr/share/redmine. Находим подкаталог config и копируем config/database.yml.example в config/database.yml. После этого редактируем файл, для того чтобы установить «production» режим базы данных:
$ sudo cp /usr/share/redmine/config/database.yml.example /usr/share/redmine/config/database.yml
$ sudo nano /usr/share/redmine/config/database.yml
Вводим текст и сохраняем файл (ctrl+x):
production:
adapter: mysql2
database: redmine
host: localhost
username: redmine
password: "[password]"
encoding: utf8
Устанавливаем необходимые пакеты:
$ sudo apt install ruby ruby-dev build-essential libmysqlclient-dev
Устанавливаем Bundler:
$ gem install bundler
Теперь можно установить gems, необходимые для Redmine:
$ cd /usr/share/redmine
$ bundle install --without development test rmagick
Создаём случайный ключ, который Rails будет использовать для шифрования данных в cookie:
$ cd /usr/share/redmine
$ bundle exec rake generate_secret_token
Дальше создаём структуру базы данных (выполняем в /usr/share/redmine):
$ RAILS_ENV=production bundle exec rake db:migrate
$ RAILS_ENV=production bundle exec rake redmine:load_default_data
Устанавливаем необходимые права доступа:
$ cd /usr/share/redmine
$ sudo chown -R www-data:www-data files log tmp public/plugin_assets
$ sudo chmod -R 755 files log tmp public/plugin_assets
При желании можно протестировать установку Redmine с помощью веб-сервера WEBrick:
$ sudo -u www-data bundle exec rails server webrick -e production
После запуска WEBrick стартовая страница Redmine должна быть доступна в браузере по адресу http://localhost:3000/
Интеграция с Apache
Установить Passenger:
$ sudo apt-get install libapache2-mod-passenger
Добавить символьную ссылку на public каталог Redmine:
$ sudo ln -s /usr/share/redmine/public /var/www/redmine
Необходимо настроить пользователя Passenger по умолчанию, для этого редактируем файл:
$ sudo nano /etc/apache2/mods-available/passenger.conf
Нужно добавить следующую строчку и сохранить (ctrl+x):
PassengerDefaultUser www-data
В итоге файл должен выглядеть так:
<IfModule mod_passenger.c>
PassengerRoot /usr/lib/ruby/vendor_ruby/phusion_passenger/locations.ini
PassengerDefaultRuby /usr/bin/ruby
PassengerDefaultUser www-data
</IfModule>
Далее создать конфигурационный файл redmine.conf для apache:
$ sudo nano /etc/apache2/sites-available/redmine.conf
Добавить следующий текст и сохранить (ctrl+x):
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www
ServerName myservername
RewriteEngine on
RewriteRule ^/$ /redmine [R]
<Directory /var/www/redmine>
RailsBaseURI /redmine
PassengerResolveSymlinksInDocumentRoot on
</Directory>
ErrorLog /var/log/apache2/error.log
# Possible values include: debug, info, notice, warn, error, crit,
# alert, emerg.
LogLevel warn
CustomLog /var/log/apache2/access.log combined
</VirtualHost>
Подключить модули Passenger и Rewite:
$ sudo a2enmod passenger
$ sudo a2enmod rewrite
Отключить default вебсайт и подключить redmine:
$ sudo a2dissite 000-default
$ sudo a2ensite redmine
Установить права доступа на /tmp/cache Redmine:
sudo chmod 777 /usr/share/redmine/tmp/cache
Перезапустить Apache:
$ sudo service apache2 reload
Теперь можно открыть любимый браузер и зайти на http://[my site or ip]/redmine
или просто http://[my site or ip]
. Должна появиться стартовая страничка системы Redmine.
Установка Mercurial
Необходимо установить пакеты:
$ sudo apt-get install mercurial libapache2-mod-perl2 libapache-dbi-perl libdbd-mysql-perl
Создать директорию, в которой будут храниться репозитории проектов:
$ sudo mkdir -p /var/hg/
Теперь мы хотим сделать репозитории доступными по http протоколу. Для этого необходимо создать cgi-скрипт:
$ sudo nano /var/hg/hgwebdir.cgi
Добавить следующий текст и сохранить:
#!/usr/bin/python
from mercurial import demandimport; demandimport.enable()
from mercurial.hgweb.hgwebdir_mod import hgwebdir
import mercurial.hgweb.wsgicgi as wsgicgi
application = hgwebdir('hgweb.config')
wsgicgi.launch(application)
Теперь нужно создать файл hgweb.config:
$ sudo nano /var/hg/hgweb.config
Добавить следующее содержимое и сохранить:
[paths]
/=/var/hg/**
[web]
allow_push = *
push_ssl = false
allowbz2 = yes
allowgz = yes
allowzip = yes
Установить разрешения для файлов:
$ sudo chown -R www-data:www-data /var/hg/*
$ sudo chmod gu+x /var/hg/hgwebdir.cgi
Теперь надо создать conf файл для Apache:
$ sudo nano /etc/apache2/conf-available/hg.conf
Добавить следующее содержимое и сохранить:
PerlLoadModule Apache2::Redmine
ScriptAliasMatch ^/hg/(.*) /var/hg/hgwebdir.cgi/$1
<Directory /var/hg>
Options +ExecCGI
</Directory>
<Location /hg>
AuthType Basic
AuthName "Mercurial"
Require valid-user
AuthUserFile /dev/null
#Redmine auth
PerlAccessHandler Apache::Authn::Redmine::access_handler
PerlAuthenHandler Apache::Authn::Redmine::authen_handler
RedmineDSN "DBI:mysql:database=redmine;host=127.0.0.1"
RedmineDbUser "redmine"
RedmineDbPass "[password]"
</Location>
Ещё необходимо создать ссылки:
$ sudo ln -s /etc/apache2/conf-available/hg.conf /etc/apache2/conf-enabled/
$ sudo ln -s /usr/share/redmine/extra/svn/Redmine.pm /usr/lib/x86_64-linux-gnu/perl5/5.22/Apache2/
Включить CGI модуль и перезапустить Apache:
$ sudo a2enmod cgi
$ sudo service apache2 reload
Репозитории будут доступны по адресам http://[my site or ip]/hg/*
. Например, для проекта project адрес будет таким http://[my site or ip]/hg/project
. Если у проекта project будет подпроект subproject1, то его репозиторий будет доступен по адресу http://[my site or ip]/hg/project/subproject1
.
Чтобы клонировать репозиторий надо будет выполнить:
$ hg clone http://[my site or ip]/hg/project
Если клонируемый проект не публичный (устанавливается в настройках проекта через веб-интерфейс системы Redmine), то потребуется ввести имя пользователя и пароль.
Авторизация осуществляется по проектам, т.е. доступ будет возможен только для участников проекта (менеджеры и разработчики).
При создании репозитория в веб-интерфейсе Redmine необходимо указать путь к нему, например /var/hg/projectname. Репозитории в /var/hg необходимо создать вручную для каждого проекта и инициализировать командой (hg init
).
После создания нового репозитория надо убедиться, что у него установлены нужные права доступа:
$ sudo chown -R www-data:www-data /var/hg/[repository name]
В принципе, есть возможность автоматизировать создание репозиториев. Информация об этом есть в руководстве по ссылке HowTo Install Redmine 1.2.x with Mercurial and Subversion on Ubuntu Server 10.04
Уведомления о фиксации изменений по email
Redmine поддерживает уведомления о разных событиях (изменениях в жизни баг/фич и т.п.). Для того чтобы пользоваться этим функционалом достаточно настроить способ отправки email-сообщений. Делается это в файле /usr/share/redmine/config/configuration.yml В файле имеются шаблоны для разных конфигураций. Нужно разкомментировать и отредактировать нужный.
Например, так:
email_delivery:
delivery_method: :smtp
smtp_settings:
address: "10.11.12.13"
port: 25
authentification: :none
enable_starttls_auto: false
openssl_verify_mode: 'none'
Обратите внимание, что каждая секция в файле configuration.yml сдвинута на два пробела. Это важно.
Базовые уведомления должны быть доступны после указания способа рассылки электронных писем. Однако для уведомлений об изменениях в репозитории необходимо использовать внешний плагин. Скачать его можно с сайта github.com/lpirl/redmine_diff_email.
Установим этот плагин. Для этого скопируем содержимое плагина в каталог /usr/share/redmine/plugins/redmine_diff_email. В соответствии с инструкцией по установке плагина изменяем файл /usr/share/redmine/app/views/repositories/_form.html.erb:
--- OLD
+++ NEW
@@ -23,6 +23,7 @@
<% button_disabled = ! @repository.class.scm_available %>
<%= repository_field_tags(f, @repository) %>
<% end %>
+<%= call_hook(:view_repository_form) %>
</div>
<p>
Оригинальный плагин работает с устаревшей версией redmine. Для redmine-3.3 нужно внести изменения в файл
/usr/share/redmine/plugins/redmine_diff_email/db/migrate/002_add_repositories_is_diff_email_attached.rb. Содержимое файла должно быть таким:
class AddRepositoriesIsDiffEmailAttached < ActiveRecord::Migration
def self.up
add_column :repositories, :is_diff_email_attached, :boolean, :default => false, :null => false
Repository.update_all(["is_diff_email_attached = ?", true])
Repository.update_all(["is_diff_email = ?", true])
end
def self.down
remove_column :repositories, :is_diff_email_attached
end
end
После этого в каталоге /usr/share/redmine выполнить команду для обновления базы данных:
bundle exec rake redmine:plugins:migrate RAILS_ENV=production
Перезапускаем Redmine:
$ sudo service apache2 reload
Если плагин установлен правильно, то в списке плагинов Administration → Plugins появится Redmine Diff Email Plugin, а также в веб-интерфейсе Redmine SomeProject → «Settings» Tab → «Repositories» Tab → «Edit» появятся настройки уведомлений.
Кроме того, чтобы информация об изменениях в репозиториях автоматически отслеживалась Redmine, необходимо выполнить дополнительные действия. Сначала нужно включить WS для управления репозиториями и сгенерировать API key. Как это делается:
* В web-интерфейсе Redmine в меню Administration выбрать Settings
* Перейти на вкладку Repositories
* Включить ‘Enable WS for repository management’
* Кликнуть на ссылку ‘Generate a key’
* Сохранить изменения кнопкой ‘Save’
Далее создаём скрипт:
$ sudo nano /var/hg/fetch_changes
Добавляем следующий текст и сохраняем: (необходимо заменить [your API key] сгенерированным в API-ключом)
#!/bin/sh
curl "http://localhost/redmine/sys/fetch_changesets?key=[your API key]" > /dev/null 2>&1
Устанавливаем права доступа для созданного файла:
$ sudo chown www-data:www-data /var/hg/fetch_changes
$ sudo chmod ug+x /var/hg/fetch_changes
Остаётся добавить в /var/hg/hgweb.config секцию [hooks], чтобы скрипт fetch_changes выполнялся после каждого коммита:
[hooks]
changegroup = /var/hg/fetch_changes
Теперь при изменениях в репозитории Redmine будет автоматически отсылать уведомления участникам проекта.