Найпростіший (і найшвидший) сервер, який ви можете використовувати для роботи з локальним сховищем, вбудований у кожен svn-клієнт . Це сервер для доступу до будь-якого сховища та будь-якої кількості сховищ , що існують у локальній файловій системі, використовуючи файл протоколу: ///. Він не забезпечує жодних методів авторизації чи автентифікації, надає лише повний необмежений доступ до сховища під контролем, але, з іншого боку, він дозволяє використовувати і надає всі можливості системи VCS як такої.
Для того, щоб використовувати цей сервер, ви маєте в будь-якому порожньому каталозі в будь-якому місці виклику CLI-команди svnadmin з відповідною підкомандою та параметрами (не можу пригадати, чи є адміністративні програми в наборі клієнтів CLI чи ні і не можуть перевірте це - я не встановив CLI svn-клієнт, тільки TortoiseSVN, у яких ці програми встановлені у версії 1.7) - сподіваюся, ви зможете його знайти.
svnadmin help
покажіть нам усі доступні підкоманди, ми зараз зацікавлені в підкоманді create
.
svnadmin help create
надайте всі необхідні нам деталі
create: usage: svnadmin create REPOS_PATH
Create a new, empty repository at REPOS_PATH.
Valid options:
...
На початковому етапі для першого репо ми можемо проігнорувати всі параметри тонкої настройки та запам’ятати лише основну форму svnadmin create REPOS_PATH
, там REPOS_PATH - абсолютний або відносний шлях до порожнього каталогу, запланованого на репо. Оскільки в більшості випадків звичайні Windows-люди для крос-платформних застосувань можуть заплутатися в людях, які позначення (прямі або зворотні косої риси) використовувати в шляху (metoo), найбезпечнішим способом є cd
місце розташування, звідки наш редактор видно без тривалого шляху - батько майбутнього репо-каталогу або сам каталог. Для запланованого на репо z:\Main
раніше svnadmin create
Z:
cd \Main
і, нарешті,
svnadmin create .
У результаті ми створюємо порожній сховище в каталозі, яке показано в Провіднику Windows із спеціальним значком як контент-індикатором
Тепер, кожного разу, коли потрібен цей сховище , ми використовуємо звичайні SVN-команди, там частина URL-адреси або параметри здаються такими, якfile:///Z:/Main
c:\>svn ls file:///Z:/Main
branches/
tags/
trunk/
(Я додав стандартне дерево репозиторію в репо).
Розберемо цю дивну URL-адресу:
file:///
, як і для будь-якої URL-адреси, означає протокол доступу, у нашому випадку протокол є спеціальним і має три, а не дві косої риски
Z:/Main
це повний шлях до репо з диском і шлях всередині диска, там усі нахили на вікні Windows замінені на "класичні" косої риски
З будь-якого іншого пункту цей сховище не має відмінностей від "Big Brothers" зі спеціальними Subversion-серверами