Другие применения команды svn merge

Команду svn merge можно использовать не только для слияния. Фактически команда производит внесение в рабочую копию изменений, равных разнице между двумя директориями или файлами в хранилище, поэтому svn merge является универсальным средством для переноса изменений. Можно привести такие примеры использования команды:

·откат уже зафиксированных изменений, в том числе целого диапазона ревизий;

·удобный просмотр (в виде изменений в рабочей копии) разницы между двумя состояниями репозитория.

Простейший рабочий цикл

Типичный рабочий цикл выглядит примерно так:

·Обновление рабочей копии из хранилища (svn update) или ее создание(svn checkout).

·Внесение изменений в рабочую копию. Изменения директорий и информации о файлах производится средствами Subversion, в изменении же содержимого файлов Subversion никак не задействован - изменения производятся программами, предназначенными для этого (текстовые редакторы, средства разработки и т. п.):

- новые (еще не зафиксированные в хранилище) файлы и директории нужно добавить (svn add), то есть передать под управление версиями;

- если файл или директорию в рабочей копии нужно удалить, переименовать, переместить или скопировать, необходимо использовать средства Subversion (svn mkdir, svn delete, svn move, svn copy);

·Анализ изменений.

- Просмотр состояния рабочей копии и локальных (ещё не зафиксированных) изменений (svn info, svn status, svn diff);

- любые локальные изменения, если они признаны неудачными, можно откатить (svn revert).

·Слияние изменений, выполненных другими, с вашей рабочей копией

- svn update

- svn resolved

·Фиксация изменений или результатов слияния в хранилище.

- svn commit