Aegis — система управления конфигурациями, разработанная Peter Miller. Система Aegis имеет много интересных возможностей, что делает ее привлекательной для использования. Одной из таких особенностей является то, что пользователи системы могут иметь разные роли — разработчики, интеграторы и т.п. Как и многие другие системы, Aegis поддерживает атомарную работу с данными, и наборы изменений. Для разработчиков ПО данная система интересна наличием возможностей для автоматической пересборки программ при подтверждении данных, и отказом в приеме, при сбое тестов.
Интеграцию Aegis с Emacs осуществляется с помощью пакета aegis-mode. Для Aegis, в отличии от многих других пакетов, не существует модуля к пакету VC, скорее всего это произошло из-за сильных различий в подходах между RCS, на идеологии которого строится пакет VC и Aegis.
Вы можете скачать aegis-mode с сайта автора. Просто разверните пакет туда, где его найдет Emacs, и вставьте команду загрузки в ваш файл инициализации. Например, вот так:
(autoload 'aegis-mode "aegis-mode" "Mode for using aegis" t)
И потом вы можете в любой момент выполнить команду M-x aegis-mode
, которая выполнит
загрузку пакета. Стоит отметить, что однажды включив aegis-mode, вы не можете его
отключить, не прибегнув к перезапуску Emacs.
Пользователи в Aegis могут иметь разные роли, и модуль интеграции с Emacs пытается
поддерживать то же разделение на роли, что и Aegis. Пользователь может изменить роль, в
которой он работает, используя меню Aegis
или выполняя команды aegis-become-...
. В
настоящее время aegis-mode поддерживает четыре роли: администратор, разработчик,
интегратор и пользователь проверяющий изменения.
После загрузки пакета, команды определенные в нем, доступны через сочетание клавиш M-x
,
или через меню Aegis
. В зависимости от роли пользователя, меню может менять список
отображаемых команд.
Команды, доступные пользователю имеют префикс aegis-
за которым следует имя
соответствующей команды Aegis. Так что работа с пакетом почти не отличается от обычной
работы с Aegis в командной строке.
Пользователь может настроить работу aegis-mode с помощью большого количества переменных и
хуков, определенных в файле aegis-vars.el
. Я коснусь лишь самых важных из них, а более
подробную информацию вы можете найти в указанном файле.
Для каждой из команд Aegis пользователь может указать ключи командной строки, который
будут использоваться при выполнении указанной команды. Эти ключи хранятся в переменных
имеющих вид aegis-mode-команда-flags
. Так что вы можете изменять соответствующие
переменные, если вам необходимо передать дополнительные ключи какой-то из команд.
Для выполнения определенных команд при переключении между ролями пользователей, пакет
использует набор хуков, имена которых имеют вид aegis-mode-become-имяроли-hook
. С помощью
этих хуков, пользователь может задать дополнительную фукнциональность, которая ему
требуется при переключении между ролями. Роль, которая будет присвоена текущему
пользователю при загрузке пакета, определяется содержимым переменной
aegis-mode-default-hat
.
Более подробную информацию об Aegis вы можете получить на сайте Aegis. Пакет aegis-mode в достаточной мере отражает идеологию Aegis, так что вам необходимо это знание для успешного использования пакета.
Last change: 05.03.2013 16:54