Rational ClearCase - Rational ClearCase

ClearCase
RationalSoftware.png
Автор (ы) оригинала Программное обеспечение Atria
Разработчики) IBM
Первый выпуск 1992 ; 29 лет назад ( 1992 )
Стабильный выпуск
9.1.0.1 / 29 июня 2021 г . ; 2 месяца назад ( 2021-06-29 )
Операционная система
Платформа
Тип Управление конфигурацией программного обеспечения
Лицензия IBM EULA
Веб-сайт www .ibm .com / products / рационально-clearcase

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

ClearCase поддерживает две модели управления конфигурацией: UCM (Unified Change Management) и базовую ClearCase. UCM предоставляет готовую модель, в то время как базовый ClearCase обеспечивает базовую инфраструктуру (UCM построен на базе ClearCase). Оба могут быть настроены для поддержки широкого спектра потребностей.

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

История

ClearCase был разработан Atria Software и впервые выпущен в 1992 году для Unix, а затем и для Windows. Некоторые разработчики Atria работали над более ранней аналогичной системой: DSEE ( Domain Software Engineering Environment) от Apollo Computer . После того, как Hewlett-Packard купила Apollo Computer в 1989 году, эти разработчики ушли, чтобы сформировать Atria. Позже Atria объединилась с Pure Software и образовала PureAtria. Эту фирму приобрела Rational Software , которую купила IBM в 2003 году. IBM продолжает разрабатывать и продавать ClearCase. В сентябре 2016 года IBM объявила о стратегическом партнерстве с HCL Technologies, которое позволит ускорить разработку.

DSEE представила множество концепций, которые были приняты ClearCase. Файловая система Apollo Domain позволяла специальным программам-обработчикам вмешиваться во время доступа к файлам. DSEE использовал эту функцию для невидимой замены версией копии при открытии определенного файла. Поскольку спецификация управления версиями находится в пользовательской среде, все обращения к файлам с поддержкой версий были перенаправлены, включая такие обычные обращения, как печать, просмотр в обычном текстовом редакторе и т. Д.

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

DSEE также представила «спецификацию версии», которая называлась «потоком». Это был список возможных версий, которые могли быть в пользовательской среде или в сборке. Основным нововведением стало использование подписей сборки и подписи выпуска программного обеспечения в потоке. Таким образом, элементы в цепочке могут быть:

  • Любые копии, зарезервированные для редактирования (т. Е. Извлеченные)
  • Последняя версия (обычно только для разработчиков)
  • Разветвленная версия файла (версия на альтернативной линии разработки).
  • Помеченная версия (для разработчиков, работающих над определенным уровнем ревизии)
  • Версия, используемая в сборке XYZ.
  • Версия, используемая в выпуске программного обеспечения xyz

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

В отсутствие невидимого перенаправления файлов файловой системы Apollo Domain ClearCase использует виртуальную файловую систему, предоставляемую функцией MVFS , описанной ниже. Понятие «нить» соответствует динамическому представлению . Поддержка производных объектов в представлении аналогична концепции DSEE.

Инфраструктура

Система баз данных , которую использует ClearCase, - это RDM Embedded от Raima . В терминологии ClearCase отдельная база данных называется VOB ( V ersioned O bject B ase). На этом уровне обслуживание осуществляется с помощью инструментов Raima. Вокруг этого уровня используется набор интерфейсов с сопутствующими инструментами для управления физической системой баз данных, что требует определенных навыков администратора базы данных .

Самая важная служба - это Atria Location Broker Daemon (ALBD), который управляет всей (LAN) связью между компьютерами. Начиная с версии 7, на серверной платформе работает Websphere Application Server с серверным приложением, называемым сервером управления изменениями (CM Server), которое обслуживает клиентов ClearCase по протоколу HTTP. (До версии 7 существовала веб-служба, с помощью которой пользователи могли получать доступ к ClearCase через свои браузеры.) Сервер CM был заменен сервером глобальной сети удаленного клиента ClearCase (сервер CCRC WAN), который по-прежнему основан на приложении Websphere. Сервер.

Просмотры

Отличительной особенностью ClearCase является файловая система MultiVersion (MVFS), проприетарная сетевая файловая система, которая может монтировать VOB как виртуальную файловую систему через динамическое представление, выбирая согласованный набор версий и позволяя создавать производные объекты . Это было отходом от модели репозитория и песочницы, потому что она позволяла раннее управление артефактами (то есть до того, как они были возвращены) и не ограничивалась управлением этими элементами конфигурации первого порядка.

ClearCase также поддерживает представления моментальных снимков, которые являются копиями данных репозитория. В отличие от динамических представлений, представления моментальных снимков хранятся в локальной (зависящей от ОС) файловой системе и не требуют доступа к сети. Вместо этого представление моментального снимка хранит копию данных VOB локально на компьютере пользователя. Представления моментальных снимков можно использовать при отключении от сети, а затем синхронизировать с VOB при восстановлении соединения. Этот режим работы аналогичен режиму работы программного обеспечения CVS (Concurrent Versions System).

Типы динамического просмотра и просмотра моментальных снимков поддерживаются локальным клиентом ClearCase (CCLC). Удаленный клиент ClearCase (CCRC) поддерживает аналогичные типы просмотра: автоматический просмотр и веб-просмотр. Оба основаны на копировании, но автоматическое представление использует MVFS для поддержки локальных совместно используемых пулов объектов VOB.

С точки зрения клиентского компьютера представление ClearCase кажется просто еще одной файловой системой. Новые файлы и каталоги, созданные в представлении ClearCase, называются «частными для просмотра», чтобы указать, что они относятся к данному представлению и не контролируются версиями. Эта функция позволяет системам сборки работать с той же структурой файловой системы, что и исходный код, и гарантирует, что каждый разработчик может создавать независимо друг от друга. В любой момент частный объект просмотра может быть добавлен в систему управления версиями и стать версионным объектом, сделав его видимым для других пользователей.

Разработчики обычно имеют в своем распоряжении одно или несколько представлений. Иногда бывает практично обмениваться мнениями между разработчиками, но совместное использование веток - более распространенная практика. Иерархия ветвей часто бывает полезной: весь проект разработки может иметь общую ветвь разработки, в то время как небольшая команда может совместно использовать дочернюю ветвь, при этом каждый разработчик имеет свою собственную частную ветвь. Если изменение в ветке считается достаточно стабильным, его можно объединить с родительской веткой.

Спецификация конфигурации

В базовом ClearCase каждое представление управляется соответствующей спецификацией конфигурации , обычно называемой спецификацией конфигурации . Это набор правил (хранящихся внутри текстового файла, но скомпилированных перед использованием), который определяет, какие версии элементов (файлы или каталоги) должны отображаться в представлении. Чтобы определить, какая версия элемента должна быть видимой, если таковая имеется, ClearCase последовательно просматривает спецификацию конфигурации сверху вниз, останавливаясь при обнаружении совпадения и игнорируя любые последующие правила. Спецификация конфигурации может также ссылаться на другие спецификации конфигурации с помощью оператора include.

В модели управления UCM спецификации конфигурации не нужно создавать или поддерживать вручную: они генерируются и поддерживаются операциями ClearCase UCM.

Строит

Сетевая файловая система обеспечивается MVFS позволяет построение аудита. Сборки в представлениях, использующих MVFS, могут отслеживать и записывать операции ввода-вывода файлов, выполняемые в процессе сборки, и связывать каждое такое событие с командой, которая его инициировала. Это позволяет ClearCase составлять ведомость материалов, которую она называет конфигурационной записью (CR), для всех сборок и обеспечивать отслеживаемость либо для целей управления конфигурацией программного обеспечения, либо как часть более крупного процесса управления жизненным циклом приложения . Аудит сборки выполняется с помощью инструментов командной строки, таких как встроенные инструменты make (omake, clearmake) или с помощью команды clearaudit, которая может вызывать другой инструмент сборки, такой как Unix make (1).

База объектов с поддержкой версий (VOB), в которой хранятся версии файловых элементов и элементов каталогов, также хранит производные объекты и метаданные, связанные с этими типами объектов.

Артефакт ведомости материалов, созданный в результате аудита сборки, известен как запись конфигурации . Это содержит:

  • Процедура сборки: метод (сценарий, make-файл и т. Д.), Вызвавший сборку.
  • Входные данные: все файлы (и их конкретные версии), которые использовались для конкретной сборки.
  • Выходные данные: все файлы производных объектов (DO) (и любые зависимые DO), созданные в результате сборки.

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

MVFS позволяет автоматически «копировать» производные объекты, построенные в одном динамическом представлении, в другое динамическое представление, для которого требуется «точно такой же» производный объект. Два производных объекта считаются «совершенно одинаковыми», если они имеют одну и ту же запись конфигурации (то есть спецификацию материалов ). Совместно используемые производные объекты физически присутствуют на сервере VOB, а не в представлениях, которые на них ссылаются. Эта функция называется подмигиванием в производных объектах и ​​требует, чтобы для сборки использовался инструмент clearmake или omake.

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

Типы клиентов

Первоначально ClearCase поддерживал только полные («толстые») клиенты, работающие в Unix и Windows. В версии 7 был представлен удаленный клиент ClearCase (CCRC). Он основан на программном обеспечении Eclipse и поставляется как в полностью упакованных версиях Eclipse, так и в виде подключаемого модуля для Eclipse, а также для других сред, таких как Visual Studio.

Клиент Тип сетевого подключения Подключение к репозиторию исходных объектов Типы просмотра Пользовательские интерфейсы
Локальный клиент ClearCase (CCLC) Только LAN RPC-соединение с версией объектной базы (VOB) Динамический, снимок ClearTeam Explorer (GUI), cleartool (CLI)
Удаленный клиент ClearCase (CCRC) WAN и LAN http (s) соединение с VOB через сервер CCRC WAN Автоматический, Интернет ClearTeam Explorer (графический интерфейс), rcleartool (CLI)

Интеграции

Другие продукты Rational Software, в частности ClearQuest и Rational Team Concert, интегрированы с ClearCase. ClearCase также интегрирован с Microsoft Visual Studio, Cadence Virtuoso и Eclipse IDE через плагин.

Репликация базы данных

ClearCase MultiSite позволяет разработчикам из разных мест использовать одну и ту же базу версионных объектов ClearCase (VOB). Каждая локация (сайт) имеет свою копию (реплику) VOB. Синхронизация данных по любому протоколу может быть однонаправленной или двунаправленной. Шаблоны синхронизации могут быть один-к-одному (две реплики обмениваются данными), кольцевым (циклическая синхронизация), один-ко-многим (репликация из «концентратора» VOB) или многие-ко-многим (каждая реплика обменивается данными с все остальные реплики).

Релизы

V9.1.0 (декабрь 2020 г.) и последующие выпуски пакетов исправлений:


V9.0.2 (январь 2020 г.) и последующие выпуски пакетов исправлений:


V9.0.1 (июнь 2017 г.) и последующие выпуски пакета исправлений:


Версия 9.0 (март 2016 г.) и последующие выпуски пакетов исправлений:

  • Поддержка запуска графического интерфейса ClearTeam Explorer (Eclipse) из команд cleartool.
  • Аутентификация смарт-карты удаленных клиентов ClearCase в Windows с помощью серверов CCRC WAN, работающих в Unix и Linux.
  • Для поддержки очень больших сборок продукта размер файла базы данных, который используется для хранения записей конфигурации для представления сборки, может превышать 4 ГБ.
  • Повышенная емкость серверов Windows для размещения большего количества версионных баз объектов (VOB).
  • Назначение явного управления ветвями, созданными в репликах VOB.
  • Улучшения производительности.


V8.0.1 (июнь 2013 г.) и последующие выпуски пакета исправлений:

  • Детализированное администрирование ACL на основе ролей для объектов файловой системы («элементы» ClearCase).
  • Автоматические представления, удобное для WAN представление, использующее многоверсионную файловую систему ClearCase (MVFS) для обеспечения динамического доступа к версиям элементов VOB.
  • Смотрите , что нового в IBM Rational ClearCase 8.0.1.x .


V8.0 (октябрь 2011 г.) и последующие выпуски пакетов исправлений:

  • ClearTeam Explorer (CTE): единый графический интерфейс для всех типов платформ, клиентов и представлений ClearCase.
  • Обнаружение и предотвращение «злых близнецов»: «злые близнецы» - это два элемента с одинаковым именем, которые были созданы в разных версиях одного и того же элемента каталога. Когда делается попытка объединить версии каталогов, элементы обнаруживаются как «злые близнецы».
  • Интерфейс управления изменениями (CMI): CMI предоставляет общий интерфейс для связывания задач с версиями элементов и действиями UCM. CMI можно настроить для поддержки поставщиков задач ClearQuest, Rational Team Concert и JIRA.
  • Поддержка типов элементов Unicode
  • rcleartool (удаленный cleartool), WAN-совместимый интерфейс командной строки для CCRC. (cleartool - это средство командной строки ClearCase для развертывания в локальной сети.)

Смотрите также

Примечания

использованная литература

внешние ссылки