5 Рад по використанню svn

Apache Subversion (SVN) - централізована система управління версіями, тобто для зберігання всіх файлів і спільної роботи використовується центральний сервер (або ПК). Так що без додаткових хитрувань, без доступу до сервера розробка буде досить проблематичною.

5 Рад по використанню svn

Система вже багато років активно використовується в середовищі розробників, але через свою обсягом і функціональністю не всі користувачі знають повний набір функцій SVN, здатних полегшити їхнє життя.

Користуйтеся зовнішніми залежностями

SVN вміє вивантажувати робочі каталоги з різних каталогів одного або декількох сховищ. Система зіставляє локальні папки з віддаленими, причому, можна позначити необхідну версію або правку.

Для цього використовується властивість svn: externals. Команда виглядає приблизно так:

Є і більш зручний варіант. Потрібно створити файл, наприклад svn.externals. Його потрібно наповнити у вигляді:

# Таких компонентів може бути багато, причому, із зазначенням ревізії

Після цього потрібно встановити цей файл в якості джерела для зовнішніх залежностей:

# Властивість буде застосовано до поточної директорії

Тепер залишилося закомітіть і апдейтнуть робочі файли.

створення патчів

Якщо у вас немає доступу / дозволу на зміну головного сховища або просто немає сенсу Коміто поточні зміни, які все ж необхідно внести, можна застосувати патч.

По суті це текстовий файл, який містить всі внесені зміни. Щоб його створити необхідно перейти в корінь і виконати:

# Файл буде збережений в кореневому каталозі

А для застосування потрібно виконати:

# Патч буде застосований для кореневого каталогу

виключення файлів

Коли доводиться працювати з декількома проектами одночасно, директорії можуть засмітитися непотрібними файлами, які можуть знадобитися для викочування, але не потрібні в розробці. Щоб не викачувати зайві файли і папки, в svn їх можна просто виключити. Тобто, вони будуть лежати на головному репозиторії, але не будуть додаватися до робочих файлів під час виконання checkout і update.

Щоб виключити каталоги, потрібно виконати update з опціями --set-depth exclude.

# Директорії і файли видаляються тільки на комп'ютері клієнта

скасування змін

Так як в svn зберігаються всі дані про внесені зміни і повний лог розробки, то система дозволяє виправляти помилки і навіть відновлювати файли. Варіантів кілька.

У випадках, коли в робочу копію були внесені зміни, але щось не працює і потрібно повернутися до останньої робочої версії файлу або цілої директорії, є команда svn revert.

# Повернення робочої копії до останньої копії на репозиторії

Припустимо, що один з розробників вніс свої зміни, закомітіл їх, а потім дізнався, що його код, наприклад, виконує вже наявну функцію, причому, гірше. Тоді можна повернутися до потрібної версії. Робиться це так:

# Повернення з ревізії 7 на ревізію 6

Ще можна швидко відновити видалені файли і директорії.

# Відновлення копії з версією +1263

Об'єднання діапазону ревізій

Крім усього іншого, SVN вміє об'єднувати не тільки дві ревізії, а цілі діапазони. Реалізована функція дуже просто:

# Об'єднання директорій в includes / test /

Найголовніше

Subversion має великий інструментарій, який зачіпає більшість завдань стеження за версіями. А вивчення максимуму з можливостей системи спростить процес розробки і використання інструменту.

5 Рад по використанню svn

матеріали по темі

Схожі статті