Наша компания недавно начала создавать ветки CVS, чтобы отмечать каждый выпуск. Раньше мы использовали теги, и если в течение периода тестирования мы исправляли что-то, что должно было выйти с выпуском, мы просто перемещали тег вперед. Это работает до тех пор, пока в один и тот же файл не будут внесены два изменения: одно должно быть выпущено, а другое - нет. Теперь нам нужно применить одно и то же изменение как к головной, так и к выпускной ветке.
Я использую плагин Eclipse CVS для взаимодействия с CVS. Когда я смотрю на историю файла, я вижу тег i20090529Release в разделе «Теги» (в данном случае в версии 1.30 файла), а когда я «Показываю средство просмотра тегов» в представлении «История», значок указывает, что это ветвь. тег, в отличие от тега версии. Когда я смотрю на ревизии, которые были зафиксированы с момента появления Branch, я вижу, что следующая ревизия, внесенная в голову, становится версией 1.31, а следующая ревизия, сделанная в ветке, становится версией 1.30.2.1. У меня вопрос: почему тег i20090529Release остается с версией 1.30 файла, которая не является самой последней ревизией в ветке i20090529? Действительно ли это действительно настоящий «тег» или это скорее концептуальная идея, что ветвь начала разветвляться на этом этапе? Я заметил, что не могу применить этот тег к любой другой версии файла. Почему он вообще отображается в столбце «Теги»?
Заранее благодарим за любые разъяснения, которые вы можете предоставить.