Привет! Сегодня я расскажу, как поставил себе наконец SVN-сервер для работы с веб-проектами. Это, кстати, значительно удобнее, чем просто копировать по FTP или даже по SCP файлы в веб-каталог, поскольку не возникает вопросов с тем, какие файлы качать и изменилось ли что-то ещё.
Итак, сервер на Debian, ставим сервер:
# apt-get install subversion
Затем создают каталог для репозиториев:
# mkdir -p /var/svn/repository
Создаём репозиторий в этом каталоге
# svnadmin create /var/svn/repository
Затем настраиваем права доступа к нему:
# nano /var/svn/repository/conf/svnserve.conf
Раскомментируем и настроим следующее:
auth-access = write
password-db = passwd
# nano /var/svn/repository/conf/passwd
username = password
Создал пользователя с именем и паролем реально существующего в системе, сделал его владельцем каталога с репозиториями:
# chown -R username /var/svn/
Стартуем сервер:
# svnserve --daemon --listen-host 151.248.118.182 --log-file /var/log/svn.log -r /var/svn/repository
Эту же запись кидаем в автозагрузку.
И сразу импортируем в репозиторий файлы:
# svn import -m 'begin' /var/www/#####.ru svn+ssh://username@litl-admin.ru/var/svn/repository
Вводим наш пароль пользователя и наблюдаем за импортом (заполнением репозитория файлами проекта сайта).
Что делаем в Windows? После установки программки TurtoiseSVN создаём новую папку и в её контекстом меню выбираем пункт:
Таким образом выгрузим содержимое репозитория в каталог на локальном диске и будем работать уже с ним.
Ну а что делать дальше я писал уже в статье о работе с системой SVN.
Ну и так, немного ликбеза. После нажатия кнопки “ОК” у нас появится диалоговое окно с ходом чекаута (выгрузки):
Когда все файлы будут переданы, мы увидим, что их пиктограммы получили зелёную пометку. Это значит, что файл не изменялся с последнего коммита:
Стоит изменить какой-либо файл, как мы увидим, что его иконка поменялась:
Можно посмотреть изменения в файле выбрав пункт Diff (в контекстном меню), а можно загрузить изменённую версию в репозиторий командой Commit. Так же есть возможности отпочковывать ветки (Branch) и вести параллельную разработку одного проекта несколькими людьми. Смотрите цикл статей о Гитхабе, в конце статьи там ссылки на другие по этой теме.
P.S. Думаю, для работы с вебом нужно в каталоге вебсервера делать автоматическую выгрузку всех изменённых файлов по требованию или автоматически. Тогда будет совсем удобно!
Comments: