На главную страницу сайта Teamlead
При использовании SVN репозитория как и при работе с любым хранилищем важно вовремя создавать бэкапы.
На файловой системе репозиторий SVN представляет собой папку с вложенными папками и файлами. Очевидно, что напрашивается самый простой способ - копирование корневой папки репозитория. Однако, данный вариант пригоден только в том случае, если в момент копирования не происходит работы с хранилищем. Т.к. нельзя однозначно определить наличие или отсутствие работы с хранилищем в конкретный момент копирования, лучше использовать более надежный механизм - создание так называемой "горячей копии", с помощью утилиты svnadmin. Утилита svnadmin обычно устанавливается во время установки SVN-клиента или сервера. Команда для создания горячей копии выглядит следующим образом:
Code Block |
---|
svnadmin hotcopy путь/к/хранилищу путь/к/резервной/копии --clean-logs |
Можно поступить более удобным способом - создать bat- или cmd-файл, создающий горячую копию хранилища, и потом создать в Windows назначенное задание, которое будет запускать данный файл по расписанию. Примерный состав файла может быть таким:
Code Block |
---|
rd d:\backup\svn\teamlead /S /Q md d:\backup\svn\teamlead md d:\backup\svn\teamlead\%date% c: cd c:\Program Files (x86)\VisualSVN Server\bin\ svnadmin.exe hotcopy d:\Repositories\teamlead d:\backup\svn\teamlead\%date% --clean-logs |