Как установить mercurial ubuntu
По мере увеличения числа вовлечённых в проект людей возникает необходимость как-то более эффективно организовывать и управлять их деятельностью. На начальном этапе для этой цели использовались Google-таблицы, но их возможности ограничены, и появилось желание перейти на новый уровень. Изучение доступных систем управления проектами показало, что из систем с открытым кодом Redmine наиболее продвинутая и по некоторым показателям обгоняет даже проприетарные системы.
Redmine, действительно, обладает большими возможностями: управление несколькими проектами, отслеживание ошибок, интеграция с репозиториями, перекрёстные ссылки на исправленные баги в коммитах и на коммиты в баг-репортах, назначение разных ролей пользователей в каждом проекте и т.д. Однако процедура установки довольна сложна, а для некоторых очень полезных функций требуется небольшая доработка или использование плагинов. Надеюсь, что предлагаемое ниже руководство поможет желающим использовать Redmine в своих проектах.
Компоненты
Система управления проектами Redmine
- ведение нескольких проектов
- система отслеживания событий (bug, feature)
- разные роли пользователей (менеджер, разработчик, репортер) по каждому проекту
- поддержка новостей, документов, файлов, wiki, форумов для каждого проекта
- интеграция с системами управления версиями (SVN, Git, Mercurial)
- уведомления о событиях по электронной почте
- возможность учёта времени работы
Система контроля версий Mercurial
Кросс-платформенная распределённая система управления версиями.
Также понадобится
Web-сервер и система управления базами данных. Использованы Mysql и Apache.
Установка
Также использовалась официальная инструкция по установке
Redmine Installation Guide.
Предполагаем что у нас уже есть сервер с предустановленным на нём Ubuntu Server 16.04. Дальнейшие инструкции описывают установку системы управления и вспомогательного ПО.
Итак, начнём. Сначала устанавливаем LAMP server:
Во время установки понадобится ввести пароль root-пользователя базы данных MySQL (не путать с паролем root операционной системы).
Создаём базу данных MySQL и пользователя redmine для работы с ней. Вместо [password] вставляем желаемый пароль пользователя.
Распаковываем Redmine в каталог /usr/share/redmine. Находим подкаталог config и копируем config/database.yml.example в config/database.yml. После этого редактируем файл, для того чтобы установить «production» режим базы данных:
Вводим текст и сохраняем файл (ctrl+x):
Устанавливаем необходимые пакеты:
Теперь можно установить gems, необходимые для Redmine:
Создаём случайный ключ, который Rails будет использовать для шифрования данных в cookie:
Дальше создаём структуру базы данных (выполняем в /usr/share/redmine):
Устанавливаем необходимые права доступа:
При желании можно протестировать установку Redmine с помощью веб-сервера WEBrick:
Интеграция с Apache
Добавить символьную ссылку на public каталог Redmine:
Необходимо настроить пользователя Passenger по умолчанию, для этого редактируем файл:
Нужно добавить следующую строчку и сохранить (ctrl+x):
В итоге файл должен выглядеть так:
Далее создать конфигурационный файл redmine.conf для apache:
Добавить следующий текст и сохранить (ctrl+x):
Подключить модули Passenger и Rewite:
Отключить default вебсайт и подключить redmine:
Установить права доступа на /tmp/cache Redmine:
Установка Mercurial
Необходимо установить пакеты:
Создать директорию, в которой будут храниться репозитории проектов:
Добавить следующий текст и сохранить:
Теперь нужно создать файл hgweb.config:
Добавить следующее содержимое и сохранить:
Установить разрешения для файлов:
Теперь надо создать conf файл для Apache:
Добавить следующее содержимое и сохранить:
Ещё необходимо создать ссылки:
Включить CGI модуль и перезапустить Apache:
Чтобы клонировать репозиторий надо будет выполнить:
Если клонируемый проект не публичный (устанавливается в настройках проекта через веб-интерфейс системы Redmine), то потребуется ввести имя пользователя и пароль.
Авторизация осуществляется по проектам, т.е. доступ будет возможен только для участников проекта (менеджеры и разработчики).
При создании репозитория в веб-интерфейсе Redmine необходимо указать путь к нему, например /var/hg/projectname. Репозитории в /var/hg необходимо создать вручную для каждого проекта и инициализировать командой ( hg init ).
После создания нового репозитория надо убедиться, что у него установлены нужные права доступа:
В принципе, есть возможность автоматизировать создание репозиториев. Информация об этом есть в руководстве по ссылке HowTo Install Redmine 1.2.x with Mercurial and Subversion on Ubuntu Server 10.04
Уведомления о фиксации изменений по email
Обратите внимание, что каждая секция в файле configuration.yml сдвинута на два пробела. Это важно.
Установим этот плагин. Для этого скопируем содержимое плагина в каталог /usr/share/redmine/plugins/redmine_diff_email. В соответствии с инструкцией по установке плагина изменяем файл /usr/share/redmine/app/views/repositories/_form.html.erb:
Оригинальный плагин работает с устаревшей версией redmine. Для redmine-3.3 нужно внести изменения в файл
/usr/share/redmine/plugins/redmine_diff_email/db/migrate/002_add_repositories_is_diff_email_attached.rb. Содержимое файла должно быть таким:
После этого в каталоге /usr/share/redmine выполнить команду для обновления базы данных:
Если плагин установлен правильно, то в списке плагинов 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'
Далее создаём скрипт:
Добавляем следующий текст и сохраняем: (необходимо заменить [your API key] сгенерированным в API-ключом)
Устанавливаем права доступа для созданного файла:
Остаётся добавить в /var/hg/hgweb.config секцию [hooks], чтобы скрипт fetch_changes выполнялся после каждого коммита:
Теперь при изменениях в репозитории Redmine будет автоматически отсылать уведомления участникам проекта.
Please consider filing a bug or asking a question via Launchpad before contacting the maintainer directly.
Original Maintainers (usually from Debian):
- Python Applications Packaging Team (Почтовый архив)
- Vincent Danjean
- Javi Merino
- Tristan Seligmann
It should generally not be necessary for users to contact the original maintainer.
Внешние ресурсы:
Подобные пакеты:
easy-to-use, scalable distributed version control system (common files)
Другие пакеты, относящиеся к mercurial-common
- зависимости
- рекомендации
- предложения
- enhances
- dep: python3 interactive high-level object-oriented language (default python3 version)
- rec: ca-certificates Common CA certificates
- rec: mercurial (>= 5.5.1-1) easy-to-use, scalable distributed version control system
- rec: sensible-utils Utilities for sensible alternative selection
- sug: python3-mysqldb Python interface to MySQL
- sug: python3-openssl Python 3 wrapper around the OpenSSL library
- sug: python3-pygments syntax highlighting package written in Python 3
- sug: wish виртуальный пакет, предоставляемый tk
Загрузка mercurial-common
Архитектура | Размер пакета | В установленном виде | Файлы |
---|---|---|---|
all | 2 622,8 Кб | 14 180,0 Кб | [список файлов] |
This page is also available in the following languages:
Авторские права © 2021 Canonical Ltd.; См. условия лицензии. Ubuntu это торговый знак компании Canonical Ltd. Об этом сайте.
If you are new to Mercurial this section provides a quick introduction.
Mercurial is a fast, lightweight Source Control Management system designed for the efficient handling of very large distributed projects.
Assumptions
It is assumed that you are aware of how to run Linux commands, edit files, start/stop services in an Ubuntu system. It is also assumed that Ubuntu is running, you have sudo access and you want to use Mercurial software.
It is also assumed you have an internet connection.
Scope of this document
To install and configure Mercurial, as well as to install some useful extensions
Installation
Mercurial is included in the Universe repository - activate this repo first (if you haven't already). Once you've finished simply execute. We will also install meld, which is a graphical merge tool useful for resolving conflicting changes.
If it fails reporting dependencies, please locate the packages and install them. If it reports any other issues, please resolve them. If you cannot resolve the issue, please refer the mailing list archive of those packages.
Installation from source
If you already have a version installed, remove it.
You may need to sudo apt-get purge mercurial instead of remove. Purge will delete configuration files, which remove keeps.
Install to the local directory to make sure everything works:
If that's OK, use checkinstall (see CheckInstall) to make a .deb package. For the summary, put something descriptive like "Mercurial distributed revision control". Accepting all of the defaults is usually sufficient.
N.B. the version must have numbers in it. If you're using a snapshot, you will probably want to put the date in there (e.g. 20091208).
If all goes well, you should have a new mercurial installed.
Configuration
Mercurial keeps system wide configuration options in the file /etc/mercurial/hgrc and user configuration options in
/.hgrc (in your home directory). We will write some user configuration options to
/.hgrc to tweak how Mercurial works.
Open an editor and Copy and Paste the following into
This sets the default username so that your name will show up on changesets you issue, changes the text editor to nano (default is vi) and sets meld as the merge program. This also enables some useful extensions: GPG allows changesets to be cryptographically signed, while Convert allows Mercurial repositories to be created from existing CVS, SVN, or git repositories.
References
Mercurial (последним исправлял пользователь ejn 2011-09-20 12:18:20)
The material on this wiki is available under a free license, see Copyright / License for details
You can contribute to this wiki, see Wiki Guide for details
Mercurial is a free, distributed source control management tool. This tutorial covers how to install Mercurial on Ubuntu and clone the Fab Academy archive.
NOTE: after each line of code you type in - you need to hit the enter key.Step 1: Install Merucurial and Dependencies
You need ssh (secure shell) to communicate with the Fab Academy server in order to clone and communicate with the shared archive. It should be installed by default, but just in case.
Type:
Then to instal Mercurial - Type:
Step 2: Key files
You need to put key files (academy and academy.pub) where Mercurial can find them.
Open terminal
You will be in your home directory by default. Your prompt with look like:
Where "YourUsername" is the username you created to login to Ubuntu.
Type the following text into the terminal after the prompt:
You system will ask you for a password - type in the password you use to log in to Ubuntu.
Note: If the system responds with a message like: ls: cannot access /home/akaziuna/.ssh: No such file or directory, then you need to create the .ssh folder. If you do not get this message, skip the command below.Within the .ssh directory you need to create another directory called keys. To do this type:
Download the keys that your instructor sent you in an email. They are named academy and academy.pub. You will need to place them in the keys directory. To do this, save the key files to your desktop from the email.
Change your location in the terminal by moving to the Desktop folder.
Type:
Your prompt should now look like: YourUsername@ubuntu:
You need to move both of the keys from your desktop to the keys directory that you created earlier.
Type:
Then type:
Both keys are now located in the .ssh directory. You can check to see by typing: sudo ls -l
/.ssh/keys to list the contents of the directory. You should see that academy and academy.pub are listed.
Step 3: Permissions for the Private Key
You need to set permissions for your private key so that only you have read/write access to them.
Type:
Then type:
Step 4: Setting the Port
To open the file with the nano text editor, type:
The nano text editor will open in the terminal window.
Add the following text to the empty file:
To save the file:
- press [control]+O to save the file (then the enter key)
- press [control]+X to exit the editor
Do not add any extension to the file.
Now we need to move it to the .ssh directory.
Type:
Step 5: Clone the archive
Now we need to clone the archive for you region: na=North America, sa=South America, eu=Europe, as=Asia, af=Africa. Ask your Local Instructor or Remote Guru what archive to clone. In this example we are copying the North American (na) repository.
For convenience, we will clone it to the desktop.
Copy the text below and paste it into the terminal:
If you are cloning for the first time, you will be told that the "authenticity of the host cannot be established" and are given the option to type "yes" or "no".
You should see the following response (or a similar response)in the terminal as the archive is cloned. Success!
Note: The number of files listed varies with the number of files in archive. A folder named academy.2015 has been created on your desktop. This folder contains the archive.Step 6: Edit the Configuration File
Now you need to edit your archive's personal configuration file. To do this you need to move into the archive folder that you just created on the desktop. It is called academy.2015
Type:
You are now within the academy.2015 directory. Your path should change to : YourUsername@ubuntu:
To edit your archive's personal configuration file (called hgrc) to reflect your name and email we need to open the file in a editior:
Type:
A text editor will open outside of the terminal window. This text should already be in the file:
Note: Do not change this text, just add to it - see step 5.
Put the following text in the file.
- Change the First and Last Name to your first and last name.
- Change the "<[email protected]>" text to your email address.
Step 7: Update Your Archive
Now try updating your archive by typing:
you should see a response like this:
Congratulations! You have been successful and you can now work with the archive. Look over the Mercurial basics and resources page.
However, if you get a response like this:
Type "hg update", now you are successful.
Troubleshooting:
If you are asked for a password:
then Mercurial can't find the keys or the key file permissions are wrong. (see steps 2 & 3).
Читайте также: