|
svn сервер под linux
- Поставим всё, что нужно
root@note-admhome:/root# aptitude install subversion libapache2-svn
- Надо сделать каталог для svn
root@note-admhome:/root# mkdir /home/.../svn/
-
В этом каталоге я создам каталог для конфигов и располоху 2 необходимых
конфигурационных файла apache.conf и users-access-file
- apache.conf нужен собственно для апача
<Location /svn/>
Allow from all
DAV svn
SVNParentPath /home/.../svn/
# our access control policy
AuthzSVNAccessFile /home/.../svn/.../users-access-file
#try anonymous access first, resort to real
#authentication if necessary.
Satisfy Any
Require valid-user
# how to authenticate a user
AuthType Basic
AuthName "Subversion repository on note-admhome"
AuthUserFile /home/.../svn/.../passwd
</Location>
-
users-access-file нужен для пользовательских ограничений.
Внимание! Как только Вы создали новый репозиторий,
поправьте этот файл, иначе получите 403-ю ошибку!
[/]
* =
[books:/]
admhome = rw
Теперь подробнее: [/]
* = всем запретить всё. [books:/]
admhome = rw разрешить admhome доступ на чтение/запись в
репозиторий books.
-
Файл паролей - генерируется так же как и .htpasswd
root@note-admhome:/home/.../svn/.../# htpasswd -c -m passwd %username%
-
Затем, по сути, конфиг apache.conf нужно скопировать/переместить
в /etc/apache2 и проинклюдить его, но у нас Debian - тут можно проще.
root@note-admhome:/etc/apache2/conf.d/# ln -s /home/.../svn/.../apache.conf svn_apache.conf
/etc.init.d/apache2 reload оно или подгрузит файл конфигурации или ругнётся на ошибку.
-
Затем, создать репозиторий, например cpp_proj
root@note-admhome:/home/.../svn# svnadmin create cpp_proj
Единственное, что - придётся поиграться с правами доступа, пока Ваш
любимый клиент (например: TortoiseSVN) не пустит Вас в каталог репозитория.
Ну и, конечно, не забудьте поправить users-access-file.
|