Меню:


Для системы ClearCase имеется как модуль для пакета VC, так и специализированный модуль — clearcase. Специализированный модуль имеет больше возможностей, и пользователям рекомендуется использовать именно его. Данный пакет поддерживает следующие возможности:

Установка пакета

Пакет clearcase доступен для загрузки со страницы автора. Он может использоваться и с GNU Emacs версии 20.4 или выше, и с достаточно свежими версиями XEmacs. Пакет может работать в разных операционных системах — как семейства Windows, так и семейства Unix. Для использования пакета, лишь поместите файлы в доступное для Emacs место, и выполните команду

(require 'clearcase)

Пакет имеет проблемы при совместном использовании со старой версией пакета vc-hooks, в которой используются несовместимые версии пакета tq. Но сейчас это встречается достаточно редко.

Использование пакета clearcase

Пакет clearcase пытается по возможности сохранять совместимость с VC по части привязок клавиш. Но предоставляемый интерфейс является более мощным, и лучше отражает идеологию ClearCase, чем модуль для пакета VC.

Работа с пакетом может осуществляться через выполнение команд напрямую, используя привязки клавиш, или через меню ClearCase, которое появляется при редактировании файлов с использованием вспомогательного режима ClearCase. Кроме выполнения действий прямо из Emacs, пользователь может использовать и внешние программы из состава ClearCase. Сюда относятся утилиты для просмотра дерева версий и работы с проектами, а также менеджер слияний, и прочие утилиты.

Многие операции пакет позволяет производить используя режим Dired. Сюда относятся операции просмотр дерева версий, массовая работа с файлами — извлечение и помещение их в репозиторий. Для обработки каталогов, находящихся под управлением ClearCase, при использовании Dired, пакет clearcase определяет специальный режим — clearcase-dired-mode. Кроме этого, пакет определяет еще несколько вспомогательных режимов, например, режим для редактирования комментариев.

Для своих привязок клавиш, пакет clearcase использует префиксное сочетание клавиш C-x v. Для того, чтобы команды clearcase не пересекались с командами пакета VC, пакет clearcase удаляет неиспользуемые привязки, при работе с данными, находящимися под контролем ClearCase.

Команды работы с данными можно разделить на несколько логических групп — работа с файлами, работа с изменениями, использование внешних утилит ClearCase, получение информации, и прочие команды. Практически для каждой команды, которая работает с текущим буфером (они оканчиваются на суффикс -current-buffer) существует аналогичная команда, которая работает с текущим файлом в буфере Dired. Такие команды имеют суффикс -dired-file. Обычно для обоих вариантов команд используется одна и таже привязка клавиш, которая вызывает соответствующую функцию в зависимости от места вызова — текущий файл или буфер Dired.

Работа с версиями

Пакет clearcase старается в своей работе поддерживать логику операций, которые предоставляются пакетом VC. Для этого, определены команды clearcase-next-action-current-buffer (C-x v v) и clearcase-next-action-dired-files (то же самое сочетание, но в режиме Dired), которые выполняют следующую операцию в цепочке действий над текущим буфером, или над выбранными файлами. Изменение состояния текущего буфера производится с помощью команды clearcase-toggle-read-only (сочетание клавиш C-x C-q), что приводит к переводу его либо в состояние доступности для внесения изменений, либо в состояние доступности только для чтения.

Пакет поддерживает массовое выполнение операций получения данных из репозитория и подтверждения данных в репозиторий. Для получения данных из репозитория могут использоваться команды clearcase-checkout-current-buffer, clearcase-checkout-dired-files и clearcase-dired-checkout-current-dir, которые приводят к получению версий из репозитория для текущего буфера, отмеченных файлов и текущего каталога. А задачи по подтверждению данных производятся с помощью команд, имеющих аналогичные имена — clearcase-checkin-current-buffer, clearcase-checkin-dired-files и clearcase-dired-checkin-current-dir. Отмена получения данных производится с помощью команд clearcase-uncheckout-current-buffer (она привязана к сочетаниям C-x v c и C-x v u), clearcase-uncheckout-dired-files (она имеет те же привязки, что и предыдущая команда, но они определены только при работе в режиме clearcase-dired-mode) и команды clearcase-dired-uncheckout-current-dir.

Регистрация файлов в системе контроля версий ClearCase производится с помощью команды clearcase-mkelem-current-buffer (сочетание клавиш C-x v i), которая регистрирует текущий буфер, или с помощью команды clearcase-mkelem-dired-files, которая регистрирует выбранные файлы.

Обновление данных в текущем буфере, каталоге или файлах в буфере Dired производится с помощью команд clearcase-update-current-buffer, clearcase-update-default-directory, clearcase-update-dired-files и clearcase-update-view. А получить конкретную версию файла можно с помощью команды clearcase-version-other-window, которая привязана к сочетанию клавиш C-x v ~.

Создание новой ветки производится с помощью команды clearcase-mkbrtype, которая привязана к сочетанию клавиш C-x v m. Остальные операции с ветвями выполняются тем же способом, что и в пакете VC.

Работа с изменениями

Команды работы с изменениями можно разделить на две группы. Первая группа для получения списков изменений использует команду diff (они имеют название начинающееся с clearcase-diff), а вторая группа команд, для этого использует пакет ediff (для них используется префикс clearcase-ediff). Ниже перечислены только команды первой группы, команды второй группы имеют аналогичные имена, с учетом вышеуказанных отличий.

Получение информации

Для получения описания файлов используются две команды. Команда clearcase-describe-current-buffer (сочетание клавиш C-x v ?) используется для получения описания файла в текущем буфере, а команда clearcase-describe-dired-file используется для получения описания файлов, выбранных в буфере dired.

Пользователи также могут получить аннотированную версию текущего буфера или отмеченных файлов с помощью команд clearcase-annotate-current-buffer (сочетание клавиш C-x v g) и clearcase-annotate-dired-file. А для получения истории текущего буфера или файла в буфере dired используются команды clearcase-list-history-current-buffer (привязанная к C-x v l) и clearcase-list-history-dired-file.

Пакет clearcase поддерживает работу со свойствами файлов ClearCase, которые связываются с зарегистрированными файлами. Пользователь может просматривать эти свойства с помощью команды clearcase-fprop-display-properties, а также вставлять их в текущий буфер с помощью команды clearcase-fprop-dump-to-current-buffer.

Использование внешних утилит ClearCase

Пакет clearcase позволяет использовать множество утилит, входящих в состав ClearCase, не покидая удобную среду Emacs:

Пакет также определяет набор команд для просмотра изменений с помощью внешних утилит:

Прочие команды

Редактирование конфигурации ClearCase производится с помощью команд, которые начинаются с clearcase-edcs. Для редактирования конфигурации определен специальный режим — clearcase-edcs-mode, который включается одноименной командой. Редактирование конфигурации производится с помощью команды clearcase-edcs-edit, которая привязана к сочетанию клавиш C-x v e. Для сохранения изменений используется команда clearcase-edcs-save. Для завершения работы с конфигурацией ClearCase используется команда clearcase-edcs-finish.

Пакет clearcase обеспечивает возможность отслеживания состояния самого себя с помощью трассировки выполняемых команд. Для включения и выключения трассировки используются команды clearcase-enable-tracing и clearcase-disable-tracing. Кроме этого, пользователь может получить данные о внутреннем состоянии пакета с помощью команды clearcase-dump. Но эти возможности в основном нужны в тех случаях, когда пакет работает не так как нужно. Если вы нашли ошибку в работе пакета, то вы можете сообщить о ней используя команду clearcase-submit-bug-report, которая соберет данные о значениях переменных, версии Emacs и прочую информацию, необходимую для воссоздания ошибки и ее исправления.

Команды clearcase-integrate и clearcase-unintegrate явно устанавливают или удаляют хуки и команды, которые обеспечивают интеграцию с системой контроля версий ClearCase.

Настройка

Также как и другие пакеты, пакет clearcase поддерживает стандартный механизм настройки Emacs. Для настройки надо всего лишь выполнить команду M-x customize-group clearcase. С его помощью пользователь может задать множество параметров, например, что использовать в качестве программы diff, а также другие параметры. Надо лишь внимательно читать описания переменных и сопоставлять их с концепциями ClearCase.

Last change: 05.03.2013 16:54

blog comments powered by Disqus