Копирование изменений между ветками


Сейчас вы и Салли работаете над параллельными ветками проекта: вы работаете над своей собственной веткой, а Салли работает над главной линией разработки (trunk).

В проектах, имеющих большое количество участников, как правило большинство участников имеют рабочую копию главной линии разработки. Когда кому-то необходимо сделать долгосрочные изменения, которые возможно нарушат главную линию, стандартной процедурой является создать отдельную ветку и фиксировать изменения туда пока работа не будет полностью завершена.

Положительным моментом является то, что вы и Салли не пересекаетесь друг с другом. Отрицательный момент в том, что вы можете разойтись слишком далеко друг относительно друга. Помните, что одной из проблем такой «сходящейся к тупику» стратегии является то, что к моменту, когда вы закончите работу со своей веткой может быть практически невозможно снова объединить ваши изменения с главной линией без огромного количества конфликтов.

Вместо этого вы и Салли можете продолжать делиться изменениями по ходу работы. Вы можете решать вплоть до отдельного изменения, стоит ли им делиться; Subversion предоставляет возможность выборочного «копирования» изменений между ветками. А тогда, когда ваша ветка будет полностью закончена, полный набор изменений ветки может быть скопирован обратно в основную ветку.



Содержание раздела