
Q. Что нужно сделать, чтобы получить ветку (бранч).

1. cvs checkout на тэг с первой версией ветки.
Для ветки 2.0.2.x - это тэг "z_1cpp_2-0-2-1"
2. cvs update с установленной галкой "retrieve rev./tag/branch" и указанным именем бранча.
Для ветки 2.0.2.x - это бранч "z_1cpp_2-0-2-new"

Q. Что нужно сделать, чтобы залить изменения в ветку (бранч).

1. Нужно определить, находится ли файл уже в ветке, или нет. Это легко сделать, посмотрев
на количество точек в номере ревизии файла. Если точка одна (1.44), значит файла в ветке
нет. Если точек три (1.44.2.15) - значит файл уже в ветке.
1.1. Если файл в ветке, то просто делаем cvs commit (галочку "force revision/branch"
ставить необязательно).
1.2. Если файл не в ветке, то сначала файл нужно добавить в ветку. Для этого есть
пункт меню "Modify - Create a btanch". Так же есть кнопка на панели инструментов.
В открывшемся окошке нужно ввести имя бранча, в который мы хотим положить
предполагаемое изменение.
1.2.1.1. После того, как файл добавлен в ветку - его можно туда скоммитить. См. пункт 1.1.

Q. Что нужно сделать, чтобы изменение из ветки попало в ствол.

1. Сохраняем файл из ветки куда-нибудь в сторонку.
2. Делаем апдейт ревизии из ствола на момент начала ветки. Если у файла из ветки ревизия
1.44.3.15, то нам нужна версия 1.44 этого файла. Не забываем при cvs update ставить
галочки "get the clean copy" и "Reset any sticky date/tag/-k options".
3. Теперь поверх этой ревизии перезаписываем файл, который был заботливо отложен в п.1.
Таким образом мы имитируем изменение этой ревизии.
4. Теперь для слияния изменений делаем cvs update (не забываем галку
"Reset any sticky date/tag/-k options"), если возникают конфликты - разбираем,
после чего делаем cvs commit.

Примечание. Если последняя ревизия основного ствола совпадает с первой ревизией ветки,
то можно сильно ускорить процесс с помощью макроса "Manage revisions" -
"Copy to HEAD version"

Q. Что нужно сделать, чтобы выпустить релиз.

1. Поменять номер версии в Addin.rc. Подумать, не надо ли поменять его в разных ветках.
2. Поставить новый тег в репозитарии, зафиксировав релиз.
3. Собрать dll и chm
4. Запаковать dll, chm и history.txt в архив и выложить его под видом бинарника.
5. Запаковать репозиторий и выложить его под видом исходников.
6. Поправить титульную страничку на сайте.
7. Выложить новую документацию на сайт (онлайн и архив chm) !!! Возможно где-то тут прячется задвоение доки в ночной сборке.
8. Написать анонс и закинуть его на форумы.
9. Ждать, когда кто-нибудь скажет, что выпускающий забыл поменять номер версии в Addin.rc
10. Goto 1.
