>Вопрос по Subversion.
>Допустим у меня первоначальная версия файла А, затем от нее отделились ветки
>А1 и А2.
>После определенного этапа я понял что в файле А есть опечатка,
>которая перешла во все ветки.
>Я пытаюсь изменить файл А, получив из репозитария его вид до отделения
>от него веток.
>Но при попытке сохранить он сохраняется как новая версия, а старая как
>была так и осталась. А дальше ты обновляешь все ветки, которые тебе надо, командой svn merge.
>Как обновить старый релиз файла А в SVN.
ИМХО правильный процесс разработки заключается в выделении центрального ствола разработки и обмена изменениями между ветками и стволом в обе стороны.
первоначальная версия развивается в одной ветке, в trunk (А)
Затем от неё отпочковываются девелоперские ветки, например А1 и А2
Релизы продукта делаются из основной ветки А, либо из дополнительной релизной ветки.
Изменения при этом мержатся из А1 и А2 в транк А, откуда делаются релизы, либо из транка они мержатся всем скопом в релизную ветку, и релиз делается уже оттуда.
При этом нужно чаще закрывать А1 и А2 и обновлять их созданием заново из основной ветки А.
Сделал какую-то атомарную работу, слил изменения, обновил исходник до свежей версии.
Если делается несколько версий продукта, то вся эта картина смещается на уровень ниже, появляются основные ветки для каждой версии и общий ствол всей разработки. Обмен изменениям тогда делать сложнее, но оно и в принципе правильно - это же всё-таки две разные версии ( для случая 1.х.х и 2.х.х, а не 1.х и 1.х+1 )