Использование SVN с помощью SSH

Использование SVN (Subversion) из командной строки.

На нашем хостинге система Subversion доступна на тарифных планах с включенным ssh (в т.ч. chroot).

Опишем основные приемы работы с SVN: 

 

Добавление и удаление файлов

Добавление файлов и каталогов может осуществлятья командой

svn add имя_файла

Добавление файлов из проекта

svn delete имя_файла

Файл будет добавлен или удален из локальной копии проекта. Изменения на сервере наступают только после применения команд синхронизации версий.

Синхронизация версий

Обновление локальной версии проекта осуществляется командой

svn up

При этом обновляются только те файлы, в которые вносились изменения между обновлениями. Тем самым минимизируется объем информации передаваемой по сети.

Обновление версии на сервере

После того как локальные файлы были изменениы, необходимо отправить изменения на сервер. Обновление версии осуществляется командой

svn ci -m "сообщение по поводу изменений"

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

При совместной работе над проектом рекомендуется сразу перед загрузкой обновлять локальную версию (svn up). Делается это для того чтобы заранее оценить возможность создания конфликтов и заняться разбором конфликта версий локально до, а не после создания новой версии. Стоит отметить, что конфликты версий возникают крайне редко. Subversion позволяет одновременно с разных компьютеров вносить изменения в один и тот же файл проекта. Конфликт версий возникает только в случае, когда изменения касаются одних и тех же строк кода.

Версии нумеруются последовательно в хронологическом порядке. При каждом обновлении (svn ci), значение версии увеличивается.

При работе с Subversion используются в основном три команды: "добавить/удалить файл", "обновить локальную версию" и "отправить изменения в базу svn". Обычно, приходя на рабочее место, я обновляю локальную версию, потом работаю, вношу изменения в код программы, в конце дня отправляю результаты работы в хранилище. Кроме всего прочего это позволяет мне придя домой, обновить по сети версию на домашнем компьютере и продолжить осмысление программы, если, конечно, есть настроение. Стоит отметить что при обновлении версии по сети передаются только изменения, разница между локальной версией и текущей.

Разбор конфликтов

Командой (svn list -v) можно посмотреть каким пользователем и когда были внесены изменения. Можно посмотребть журнал обновлений (svn log), можно сравнить разницу между версими (svn diff). И произвести откат (svn revert) или слияние версий (svn merge). Подробнее о методах разбора конфликтов, откате, ветвлении и слиянии версий можно прочитать в документации по SVN.

Официальная документация на руcском языке по svn-клиенту.

Если у Вас возникли какие то вопросы при работе с svn, Вы всегда можете обратиться в круглосуточную Службу технической поддержки хостинга.

Вам также может помочь