В значительной степени то, что говорили все остальные, но я подумал, что могу поделиться своим опытом работы с разработками в нескольких ветках с использованием SVN
.
С нашим основным продуктом нам нужно одновременно разрабатывать в 2+ версиях одновременно.
Первоначально я использовал основной ствол в качестве версии "основной разработки", с тегами, используемыми для каждого фактического выпуска. Ветви были использованы для значительных усилий по разработке нового набора функций. Позже, когда мы начали работать над 2, 3 и 4 выпусками одновременно, я начал использовать ветку для каждой ревизии.
Поскольку я поддерживаю репозиторий, а также обрабатываю push-сборки QA, я каждое утро проверяю, что происходит «свертка», которая состоит из объединения изменений в дереве, начиная с самой низкой в настоящее время активной ветви. Таким образом, я получаю слияние изменений с 1.1 на 1.2, который слился в 1.3 с любыми другими изменениями с 1.2 с момента последнего слияния и т. Д.
Когда я фиксирую, я всегда комментирую коммит что-то вроде
объединено 1,1 рев 5656-5690
Это может быть немного болезненно, но это работает :)