- make sure dav_module, dav_svn_module, and authz_svn_module are installed on Apache (assuming you're using webdav to do svn)
- create an (arbitrarily named/located) svn config file (maybe called subversion.conf) and include in httpd.conf
- create an (arbitrarily named/located) auth file (maybe called svn-auth-file) with the htpasswd binary that comes with Apache (should be under apache/bin), using -cm flag for first user and -m for each additional
- create an (arbitrarily named/located) acl file (maybe called svn-acl) and assign permissions to users created in the previous step to groups and "projects" (directories) following this format:
# specify groups here
#
[groups]
team1 = ross, rachel
#
# team1 group has a read/write access to project1 repository
# all subdirectories
# all others have read access only
#
[project1:/]
@team1 = rw
* = r
#
# project2 repository, only harry and sally have read-write access to project2
#
[project2:/]
harry = rw
sally = rw
* = r
4. inside the subversion.conf create a virtual directory using the following format, including the acl file created in the previous step
<location project1="">
DAV svn
SVNPath C:/Repositories/project1
AuthType Basic
AuthName "Subversion Project1 repository"
AuthUserFile c:/etc/svn-auth-file
Require valid-user
AuthzSVNAccessFile c:/etc/svn-acl
</location>
No comments:
Post a Comment