В ClearCase нет эквивалента свойству Subversion svn:externals
. Самое близкое, что вы можете получить, это использовать внутренние символические ссылки ClearCase с помощью команды cleartool ln -s
. Если вы связываете файлы, вы можете попробовать использовать жесткие ссылки, но они могут вызвать путаницу среди пользователей.
У меня были проблемы с svn:externals
, и я перестал их использовать. Слишком легко указать активно меняющуюся HEAD в качестве ссылки svn:externals
, а затем забыть об этом при создании тега. Это может привести к изменению вашей версии с тегами без вашего ведома.
Чтобы обойти это, вы должны пометить только указанную ревизию И , убедитесь, что вы используете закрепление ревизии, так как более поздняя ревизия может переместить или удалить дерево каталогов, на которое вы ссылались. (Спорят, считается ли ссылка на каталог tags
указанной версией или вам действительно нужно использовать -r
).
Лучшим способом является обработка каталогов из подкомпонентов, на которые вы ссылаетесь с помощью таких вещей, как svn:exterals
, как фактических выпусков и сохранение их на каком-либо сервере выпусков. Когда вы выполняете сборку своего приложения, вы копируете необходимые файлы с сервера релизов в свой проект так же, как это делают Maven и Ant / Ivy. Если ваш релиз на самом деле является просто исходным кодом, вы можете сохранить его на своем сервере релизов как tarball.
Большим преимуществом является то, что этот метод теперь не зависит от специальных функций в вашей системе контроля версий.