Есть ли мерзавец, эквивалентный clearcase catcr
Единственный мой опыт работы с системами контроля версий - это clearcase, и, хотя он хорошо справился со своей задачей, я бы сейчас хотел перейти на бесплатный инструмент. Я читал и экспериментировал с Git & SVN и определенно вижу преимущества подхода на основе коммитов по сравнению с подходом на основе файлов, который использует clearcase.
Однако есть части Clearcase, которые я бы пропустил, если бы в других инструментах не было эквивалента. Clearcase может различать файлы, которые были написаны пользователем, и файлы, созданные из программ, которые он написал. Пользовательские файлы будут "Версии файловых элементов", а файлы, созданные программой - "Версии производных объектов". Кроме того, зависимости "версии производного объекта" могут быть определены с использованием открытого регистра cleartool catcr
команда.
Мой вопрос: есть ли эквиваленты этих типов файлов в git и есть ли эквивалент cleartool catcr
команда? Я согласен, что это не является частью системы контроля версий, но я бы хотел повторить это, если бы перешел в GIT.
2 ответа
Для меня самая приятная часть работы с производными объектами - иметь полный список зависимостей от cleartool catcr <flags/options> DO_name
и на самом деле не иметь более быстрого процесса компиляции.
Ближайшая вещь, чтобы достичь этого без clearmake
вероятно, использует gcc -MM
, Тем не менее, ничто не сравнится с выводом cleartool catcr
,
cleartool catcr
использовать метаданные (запись конфигурации или CRs
) прикреплен к производным объектам (.o
файлы), сами генерируются clearmake
,
Это использовалось для огромного набора файлов C, чтобы ускорить компиляцию и избежать перестройки всего.
SVN и Git больше сосредоточены на части управления версиями и не будут предоставлять аналогичный механизм.
Кроме того, в настоящее время либо сама компиляция выполняется быстрее (из-за увеличения памяти, процессора и скорости диска), либо программы разрабатываются на других языках, которые предлагают лучший опыт компиляции (или выполняются по сценарию)