В настоящее время мы используем subversion на относительно большой базе кода. Каждый выпуск получает свою собственную ветку, и исправления выполняются против магистрали и переносятся в ветки выпуска, используя svnmerge.py
Я верю, что настало время перейти к лучшему контролю над версиями, и я некоторое время играл с Mercurial.
Кажется, есть две школы, хотя при управлении такой структурой релиза с использованием Mercurial. Либо каждый выпуск получает свое собственное репо, и исправления производятся против ветки релиза и переносятся в основную ветку (и любые другие более новые ветки релиза.) ИЛИ используя именованные ветки в одном репозитории (или несколько совпадающих копий.)
В любом случае кажется, что я могу использовать что-то вроде трансплантации для изменений cherrypick для включения в ветки релиза.
Я прошу вас; Каковы относительные достоинства каждого подхода?