Створення робочої копії

Як правило, робота зі сховищем Subversion починається зі створення робочої копії проекту. При створенні робочої копії на локальній машині створюється копія сховища. Ця копія містить HEAD (останню правку) сховища, зазначеного вами в командному рядку:

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

Усередині Subversion певна інформація - наприклад, імена властивостей, шляхи і лог-повідомлення - обробляється як текст в кодуванні UTF-8. Однак це зовсім не означає обов'язкового використання UTF-8 при роботі з Subversion. У разі якщо перетворення між UTF-8 і локальної кодуванням на комп'ютері можуть бути виконані (що справедливо для більшості іспульзуемих сьогодні кодувань), як правило, Subversion-клієнт виконує ці перетворення легко і прозоро для користувача.

Крім того, імена шляхів при WebDAV-транзакціях використовуються як значення XML-атрибутів, так само як і в деяких власних файлах Subversion. Це означає, що при вказівці шляхів можуть використовуватися тільки коректні для XML (1.0) символи. Також при вказівці шляхів Subversion забороняє використовувати символи TAB, CR і LF, щоб вони не пошкоджували файли відмінностей і не спотворювали висновок таких команд як svn log або svn status.

Вам може здатися, що потрібно пам'ятати дуже багато всього, проте на практиці ці обмеження не викликають складнощів. Якщо ваші локальні установки сумісні з UTF-8 і ви не використовуєте спеціальних символів при вказівці шляхів, то проблем при роботі з Subversion у вас не виникне. Клієнт для командного рядка трохи в цьому допомагає - він автоматично коригує неприпустимі символи, що зустрічаються в набраних URL, «юридично правильними» версіями для внутрішнього використання.

Хоча в наведеному прикладі робоча копія створюється на основі кореневого каталогу, ви можете легко створити робочу копію на основі підкаталогу будь-якого ступеня вкладеності, вказавши при створенні робочої копії підкаталог в URL:

Виняток становлять випадки, коли ви готові зафіксувати новий файл або каталог, або внести зміни в один з існуючих файлів або каталогів. Ці операції не вимагають додаткового повідомлення сервера Subversion.

А як щодо каталогу .svn?

Кожен каталог в робочій копії містить службову область - підкаталог з назвою .svn. Зазвичай команди, використовувані для виведення вмісту каталогів, не показують цей підкаталог, але тим не менш, він грає дуже важливу роль. Що б ви не робили, не видаляйте і не міняйте нічого в службовій області! Subversion використовує її при управлінні робочою копією.

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

Ця команда створить робочу копію в каталозі з іменем subv. замість каталогу trunk як ми робили раніше.

Схожі статті