После того, как решение о начале работ принято встает несколько организационных вопросов.
- Какой тип лиценции использовать;
- Один разработчки или их несколько? Если их несколько, то как организовывать взаимодействие между ними:
- каждый работает над своей частью, а потом пересылаюся файлы и патчи через e-mail и ICQ;
- используется система контроля версий;
- Какой инструментарий использовать;
Выбор и настройка системы контроля версий
Систем контроля версий (version control system) существует довольно много. Краткий обзор некоторых из них можно прочитать здесь или здесь (engl.).
Я выбрал SVN
- свободный, открытые исходники;
- мультиплатформенность;
- наличие разных клиентов на любой вкус;
- легкость установки сервера;
- функциональность;
Если в качестве системы контроля версий выбрана система SVN, то надо ее куда-то установить.
1. Домашняя машина
2. Хостинг
Проблема организации доступа к домашней машине:
1. Настойка NAT в модеме
2. Динамический адрес модема.
3. Firewall
Настройка SVN
Создать репозитарий
$cd /cygdrive/d/home/markoval
$svnadmin create tests
Редактируем конфигурацию
$vim tests/conf/svnserve.conf
Главное – прописать права доступа. Для этого указываем разрешение/запрещение на анонимный и авторизованный доступ, а также пишем, что проверять это надо в файле с паролями.
[general]
anon-access = read
auth-access = write
password-db = passwd
Кладем файл с именами пользователей и паролями сюда же, называем его как указали в конфигурации
[users]
Alisa = VerySecretPassword2
John = simple_pass12
Запускаем сервер, к которому потом будем обращаться.
$svnserve –daemon –root /cygdrive/d/home/markoval/tests/
Проверяем существование репозитария
$svn ls svn://markoval.homeip.net/mysvn
svn: Can’t connect to host ‘markoval.homeip.net': Connection refused
Проверка того, что это работает, хотя бы в черне, через прокси сервер – Secure-Tunnel. Surf Safe and Secure.
$svn ls svn://192.168.1.33/mysvn
$cd /cygdrive/d/home/markoval/tests/
$cd sync
$svn ls
$cygrunsrv –install proftpd –path /usr/sbin/proftpd –args –nodaemon –termsig TERM –shutdown
$cygrunsrv –install svnserve –path /usr/bin/svnserve –shutdown –args “-d -r /cygdrive/d/home/markoval/tests/svnreposits/”
How do I run svnserve as a serviceon Windows?
Оттуда идем на сайт, где лежит специальный инструментарий
SVNServiceis a free tool written by Magnus Norddahl