Недавно был такой таск - установить на клиентский тазик связку svn + mod_dav для апача с соединением по HTTPS. ОС там была Ubuntu, а в ней настройка апача не совсем как везде :) Так что смотрите.
Пошагово делаем так:
1. Устанавливаем subversion:
sudo apt-get install subversion libapache2-svn apache2
2. Включаем ssl модуль для апача. Если нам ssl не нужен, то пропускаем пункты 2-4.
sudo a2enmod ssl
3. Копируем наш ключ в /etc/apache2/ssl либо создаем новый командой:
sudo make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem
4. Выставляем права доступа к сертификату иначе "кина не будет".
sudo chmod 600 /etc/apache2/ssl/apache.pem
5. Включаем модуль dav для апача:
sudo a2enmod dav dav_svn
6. Добавляем конфиг для mod_dav в файл apache2.conf в конец или в файл /etc/apache2/mods-available/dav_svn.conf
Теперь наш репозиторий будет доступен по адресу https://ourdomain.int/opt/testrepo после авторизации.
Если нужно добавить еще репозитории, то повторяем шаги 6-9 только с новыми путями, проверьте внимательно.
Вроде бы усё... Ну, может что-то забыл, но в таком случае гугл вам точно поможет - а то память не резиновая :)
Пошагово делаем так:
1. Устанавливаем subversion:
sudo apt-get install subversion libapache2-svn apache2
2. Включаем ssl модуль для апача. Если нам ssl не нужен, то пропускаем пункты 2-4.
sudo a2enmod ssl
3. Копируем наш ключ в /etc/apache2/ssl либо создаем новый командой:
sudo make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/apache2/ssl/apache.pem
4. Выставляем права доступа к сертификату иначе "кина не будет".
sudo chmod 600 /etc/apache2/ssl/apache.pem
5. Включаем модуль dav для апача:
sudo a2enmod dav dav_svn
6. Добавляем конфиг для mod_dav в файл apache2.conf в конец или в файл /etc/apache2/mods-available/dav_svn.conf
<Location /opt/testrepo>
DAV svn
SVNPath /opt/testrepo/
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /opt/testrepo/svnpasswd
require valid-user
SSLRequireSSL #закомментировать если не надо ssl
Order deny,allow
</Location>
sudo svn ls file:///opt/testrepo/poject/
9. Создаем пользователя:
sudo htpasswd -cm /opt/testrepo/svnpasswd usera
SVNPath /opt/testrepo/
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /opt/testrepo/svnpasswd
require valid-user
SSLRequireSSL #закомментировать если не надо ssl
Order deny,allow
</Location>
7. Перезагружаем апач после внесения всех изменений:
sudo /etc/init.d/apache2 reload
8. Создаем репозиторий svn и его структуру:
sudo svn mkdir file:///opt/testrepo -m "Testing Initial SVN Structure"
sudo svnadmin create /opt/testrepo
Далее импортируем существующий код в репозиторий:
sudo svnadmin create /opt/testrepo
Далее импортируем существующий код в репозиторий:
sudo svn mkdir file:///opt/testrepo/project -m "Project zero"
sudo svn import /home/user/project file:///opt/testrepo/project
Содержимое папки /home/user/project будет добавлено в папку /opt/testrepo/project Просмотреть что мы наимпортировали можно командой:
Содержимое папки /home/user/project будет добавлено в папку /opt/testrepo/project Просмотреть что мы наимпортировали можно командой:
sudo svn ls file:///opt/testrepo/poject/
9. Создаем пользователя:
sudo htpasswd -cm /opt/testrepo/svnpasswd usera
Когда будем создавать 2го и т. д., то необходимо убрать опцию -c - она нужна для создания файла. А опция -m нужна для указания криптовать пароли md5 алгоритмом.
Если нужно добавить еще репозитории, то повторяем шаги 6-9 только с новыми путями, проверьте внимательно.
Вроде бы усё... Ну, может что-то забыл, но в таком случае гугл вам точно поможет - а то память не резиновая :)
Комментариев нет:
Отправить комментарий