Руководство по инструменту: Настройка управления версиями с помощью Rational Rose RealTime с Rational ClearCase
В этой памятке описывается настройка управления версиями в Rational Rose RealTime с Rational ClearCase.
Инструмент: Rational Rose RealTime
Взаимосвязи
Основное описание

Обзор

Rational ClearCase использует модель представления в сочетании с виртуальной файловой системой, что позволяет указать линейку версий файлов, с которыми вы хотите работать. После этого Rational Rose RealTime распознает файлы в текущем представлении как будто они хранятся в обычной файловой системе (не ClearCase). Rose RealTime задает набор файлов, составляющих модель, а ClearCase предоставляет версии этих файлов, определяемые спецификацией конфигурации представления.

значок книги Дополнительные сведения о применении Rose RealTime с ClearCase приведены в документе Руководство по коллективной разработке в Rational Rose RealTime.

Перед применением ClearCase необходимо настроить вашу рабочую станцию и все прочие рабочие станции, на которых будет применяться ClearCase.

Предварительное условие: настройка ClearCase

Общие рекомендации

Если вы являетесь пользователем Microsoft Windows NT, не открывайте представления через точку монтирования MVFS или диск M:. Вместо этого воспользуйтесь представлениями через явные монтирования дисков, такие как X:, Y: или Z:. Это улучшит прерывания и устранит зависимости от имен представлений.

Интеграция UCM

Интеграция UCM позволяет присвоить операции ревизиям из наборов инструментов при работе с UCM VOB. Кроме того, можно перебазировать, доставить и выполнить обозреватель проектов в Rose RealTime.

Представления моментальных копий

В ClearCase можно запустить обновление представления моментальной копии из Rose RealTime. Представление моментальной копии содержит структуру каталогов исходных файлов.

Применять представления моментальных копий рекомендуется при наличии следующих условий:

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

Все рабочие станции, которые будут обращаться к VOB или представлению, должны быть настроены для использования ClearCase. Для Windows NT/2000 к ним относятся все рабочие станции, используемые для разработки. Для UNIX к ним относятся все системы, являющиеся серверами представлений.

Кроме того, все системы, выполняющие роль серверов представлений для представлений ClearCase, используемых Rose RealTime, должны быть настроены для ClearCase. При использовании ClearCase MultiSite вам потребуется проделать это на всех системах, в которых скопированы VOB, содержащие Rose. Определите, какие системы являются серверами представлений, можно введя следующую команду в командной строке:

 cleartool lsview

Второй элемент в каждой строке вывода указывает имя системы, в которой выполняется сервер представлений. Например, если в выводе команды lsview вы увидите следующую строку:

 myview mymachinevwsmyview.vws

то "mymachine" будет представлять имя системы, в которой существует сервер представления myview.

значок справочника Дополнительные сведения можно получить у администратора ClearCase или в документации по инструментам управления исходным кодом в книге Rational Rose RealTime - руководство по коллективной разработке.

Исходная установка

Следующие действия применимы если вы работаете над моделью, уже находящейся под управлением исходным кодом в VOB. Дополнительная информация приведена в документации по администрированию управления исходным кодом в книге Rational Rose RealTime - руководство по коллективной разработке.

  1. Создайте представление интегратора чтобы спецификации конфигурации отображались следующим образом:
 
element * CHECKEDOUT
element * /main/LATEST
  1. Создайте метки проекта чтобы задать различное выравнивание. Примерами значимых меток являются:
  • TC_BASELINE_0 - для представления исходного состояния проекта
  • TC_BUILDFILES - для указания версий элемента, добавляемых в следующую автоматическую компиляцию
  • TC_LATEST_STABLE - для определения последнего стабильного выравнивания ветви интеграции
  1. Создайте исходное выравнивание и примените метку к VOB. Примером исходного выравнивания может быть:
 
[x:dev]cleartool mklabel -recurse TC_BASELINE_0 dev
  1. Создайте шаблон представления разработчика чтобы проверить создание всех спецификаций конфигурации из общей базы. Это обеспечит согласованность и управляемый доступ к модели и облегчит применение выравнивания и частных ветвей.

    Существует две основные функции, выполняемые разработчиками, обзор и разработка. Для каждой из них требуется своя спецификация конфигурации.

значок книги Информация о правилах шаблонов приведена в сведениях об исходной установке в Rational Rose RealTime - руководство по коллективной разработке.

Этапы работы с инструментами

Для применения ClearCase из Rose RealTime выполните следующие действия:

  1. Управляйте соответствующими элементами модели как блоками
  2. Создайте локальную рабочую область
  3. Сохраните модель в рабочей области
  4. Настройте опции управления исходным кодом рабочей области
  5. Добавьте модель к управлению исходным кодом
  6. Сделайте рабочую область по умолчанию доступной для всех участников проекта
  7. Используйте шаблоны представлений
  8. Сущности ClearCase
  9. Автоматизируйте компиляцию
  10. Процесс разработки
  11. Процесс интеграции

1. Управляйте соответствующими элементами модели как блоками

Определите уровень дискретности, необходимый для проекта и среды коллективной разработки на текущем этапе. Проделайте это совместно с архитектором проекта.

2. Создайте локальную рабочую область

Вам потребуется создать локальную рабочую область для сохранения моделей в ClearCase. Все разработчики, обращающиеся к файлам Rose RealTime в VOB должны использовать собственные выделенные представления.

3. Сохраните модель в рабочей области

Прежде, чем поместить модель под управление исходным кодом следует сохранить ее в локальной рабочей области. Сохраните модель в каталоге, связанном с хранилищем управления исходным кодом.

4. Настройте опции управления исходным кодом

Для включения управления исходным кодом задайте соответствующие параметры, описанные в основах управления исходным кодом в книге Rational Rose RealTime - руководство по коллективной разработке.

5. Добавьте модель к управлению исходным кодом

Самым простым способом добавить все применимые блоки к управлению исходным кодом является инструмент Отправить все изменения в управление исходным кодом. Дополнительные сведения приведены в описании администрирования управления исходным кодом в книге Rational Rose RealTime - руководство по коллективной разработке.

6. Сделайте рабочую область по умолчанию доступной для участников проекта

Файл рабочей области (.rtwks) содержит сведения, общие для всех пользователей, работающих над проектом. После изначальной настройки параметров в рабочей области они вряд ли будут изменены в дальнейшем. Все разработчики проекта должны использовать одинаковые копии файла рабочей области. По этой причине может потребоваться поместить этот файл под управление исходным кодом, чтобы всем пользователям проекта была доступна одна фиксированная версия. Rational Rose RealTime не предоставляет явной поддержки для добавления или изъятия этого файла.

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

7. Используйте шаблоны представлений

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

значок книги Дополнительные сведения приведены в описании параллельной разработки в Rational ClearCase в книге Rational Rose RealTime - руководство коллективной разработки.

8. Сущности ClearCase

Можно создать представления, шаблоны представлений и метки для облегчения выполнения функций Rational ClearCase. См. сведения о параллельной разработке ClearCase в Rational Rose RealTime - руководство по коллективной разработке.

9. Автоматизация компиляции

Для предоставления возможности избирательного выбора версий файлов, включаемых в компоновку, компоновщик выбирает все версии, помеченные меткой компоновки TC_BUILDFILES. Это обеспечивает гибкость при изменении точных версий, добавляемых в компоновку. Например, если последняя версия файла содержит не компилируемый код, то следует пометить предыдущую версию.

Компоновка состоит из следующих этапов:

  1. Пометить файлы компоновки.
  2. Выполнить компоновку.
  3. При успешном завершении компоновки:
    • Создайте новую метку выравнивания и примените версии файла компоновки.
    • Примените TC_LATEST_STABLE для компоновки версий файлов.
    • Сделайте новое выравнивание доступным разработчикам.

10. Процесс разработки

Все операции разработки выполняются одним разработчиком и в частной ветви, конкретной для операции. Для каждого разработчика требуется собственное представление. Представление основано на точке ветвления в ветви интеграции, определенной меткой компоновки.

Следует выбрать уникальное имя ветви, идентифицирующее выполняемую работу, например:

 paulz_timing

Правила спецификации конфигурации представления настраиваются для автоматического изъятия и ветвления файлов из точки ветвления в частную ветвь. Точно также, созданные при разработке операции немедленно ветвятся в частную ветвь.

Так как ветвь скрыт от остальных разработчиков, пользователь может добавить дополняющие изменения в ветвь. Когда разработчик удовлетворен выполнением изменений и их готовностью к интеграции, от сообщает интегратору о том, что все изменения в частной ветви готовы к интеграции.

Помещая частные ветви разработчиков вне меток, соответствующих версиям, используемым автоматической компиляцией, все разработчики могут повторно использовать большинство результатов компиляции в виде добавляемых производных объектов. Это существенно снижает объем компиляции, необходимой каждому разработчику при внесении изменений.

11. Процесс интеграции

Все операции разработки должны в конце-концов быть объединены в ветвь интеграции. ClearCase предлагает несколько инструментов для выполнения этого слияния. Команда cleartool findmerge позволяет объединить все изменения из ветви в другую ветвь. Из представления интеграции можно выполнить следующие команды:

 cleartool findmerge dev -all -fversion .../paulz_timing/LATEST -merge

Также пользователя Windows NT могут воспользоваться ClearCase Merge Manager для выполнения того же объединения.

Оба эти метода объединят версии каталогов и изменения в файлах моделей с помощью Rose RealTime Model Integrator. Выполнив объединение интегратор должен загрузить модель в Rose RealTime и проверить отсутствие ошибок слияния. При успешной загрузке модели изменения следует добавить с помощью пункта меню Инструменты -> Управление исходным кодом -> Отправить все изменения в управление исходным кодом.

Для интеграции серии операций разработки:

  1. Загрузите модель из представления интегратора.
  2. Выполните слияние, как описано выше.
  3. Выберите в меню пункт Инструменты -> Управление исходным кодом -> Синхронизировать всю модель. При этом будут перезагружены все файлы, измененные в ходе объединения.
  4. Убедитесь, что различия слияния допустимы.
  5. С помощью пункта меню Инструменты -> Управление исходным кодом -> Отправить все изменения в управление исходным кодом примите изменения и добавьте их в управление исходным кодом.
  6. Повторите действия 2-5 для всех операций, требующих интеграции.