Насколько я понимаю вашу проблему, вы хотите узнать, что изменилось в конкретной ветке, и применить эти изменения к стволу. Я думаю, что самый простой способ сделать это — создать патч-файл.
Начните с проверки основания и кончика ветки в отдельные каталоги. Вы сказали, что у вас есть базовый тег, который ставит вас впереди 99% людей, использующих CVS. Если это не так, вы можете оформить заказ на основе даты. Найти правильную дату будет непросто; самый простой способ — посмотреть в журнале файл, который, как вы знаете, не был изменен в ветке, и отследить, где эта ветка появляется в истории изменений.
Второй шаг — создать файл исправления, описывающий все изменения, сделанные в ветке. Инструкции здесь кажется завершенным (я выполнил поиск в Google по запросу «создать патч» и посмотрел на первые результаты).
Дальнейшие действия зависят от того, насколько велика заплата и насколько ствол изменился с тех пор, как ветка была срезана. Если вам повезет, самый простой способ — проверить ствол и применить патч, как описано в связанном документе. Вы, вероятно, получите по крайней мере несколько сбоев, и вам все равно нужно проверить каждое из изменений, чтобы убедиться, что оно все еще имеет смысл.
В качестве альтернативы можно открыть три окна: Окно №1 — это файл исправления, в котором будут указаны файлы, которые были изменены, и что в них изменилось. Окно № 2 — это файл на (конце) ветки, поэтому вы можете видеть, что он делает в данный момент. Окно № 3 — это файл в вашем багажнике. В этом подходе вы копируете код из № 2 в № 3, где это имеет смысл, а № 1 используется просто как руководство к тому, что копируется.
Как бы то ни было, в то время как CVS особенно болезненна при ветвлении и слиянии, никакая VCS не хороша для слияния сильно расходящихся ветвей (независимо от того, что говорит Джоэл).
person
parsifal
schedule
27.02.2013