1.下载 httpd,apr,apr-util,subversion源码包
2.建立svnroot用户
Bash代码
1.groupadd svn
2.useradd svnroot -g svn
3.passwd svn
groupadd svn
useradd svnroot -g svn
passwd svn
3.解压并安装apr,apr-util
4.安装httpd
Bash代码
1.tar xvzf httpd-2.2.17.tar.gz
2.cd httpd-2.2.17
3../configure --prefix=/opt/apache --enable-dav --enable-so
4.make && make install
tar xvzf httpd-2.2.17.tar.gz
cd httpd-2.2.17
./configure --prefix=/opt/apache --enable-dav --enable-so
make && make install 5.安装Subversion
Bash代码
1.tar xvzf subversion-1.6.9.tar.gz
2.tar xvzf subversion-deps-1.6.9.tar.gz
3.cd subversion-1.6.9
4../configure --with-apxs=/opt/apache/bin/apxs --prefix=/opt/subversion --with-apr=/usr/local/apr --with-apr-util=/usr/local/apu --with-ssl --with-zlib=/usr/lib --enable-maintainer-mode
5.make &&make install
tar xvzf subversion-1.6.9.tar.gz
tar xvzf subversion-deps-1.6.9.tar.gz
cd subversion-1.6.9
./configure --with-apxs=/opt/apache/bin/apxs --prefix=/opt/subversion --with-apr=/usr/local/apr --with-apr-util=/usr/local/apu --with-ssl --with-zlib=/usr/lib --enable-maintainer-mode
make &&make install
6.建立代码仓库
Bash代码
1.su svnroot
2.mkdir /home/svnroot/repository
3./opt/subversion/bin/svnadmin create /home/svnroot/repository/test
4.chmod 700 /home/svnroot/repository
5.su
su svnroot
mkdir /home/svnroot/repository
/opt/subversion/bin/svnadmin create /home/svnroot/repository/test
chmod 700 /home/svnroot/repository
su
7. 修改配置
Bash代码
1.vi /opt/apache/conf/httpd.conf
2. //找到下列语句,如果没有则自行添加
3. LoadModule dav_svn_module modules/mod_dav_svn.so
4. LoadModule authz_svn_module modules/mod_authz_svn.so
5. //在后面添加
6. <Location /svn>
7. DAV svn
8. SVNParentPath /home/svnroot/repository/ //svn父目录
9. AuthzSVNAccessFile /home/svnroot/repository/authz.conf //权限配置文件
10. AuthType Basic //连接类型设置
11. AuthName "Subversion.tips" //连接框提示
12. AuthUserFile /home/svnroot/repository/authfile //用户配置文件
13. Require valid-user //采用何种认证
14. </Location>
15.
16.//重启apache
17. # /opt/apache/bin/apachectl restart
18.//打开浏览器访问http://localhost/svn/test/,如果有东西显示就说明成功。
vi /opt/apache/conf/httpd.conf
//找到下列语句,如果没有则自行添加
LoadModule dav_svn_module modules/mod_dav_svn.so
LoadModule authz_svn_module modules/mod_authz_svn.so
//在后面添加
<Location /svn>
DAV svn
SVNParentPath /home/svnroot/repository/ //svn父目录
AuthzSVNAccessFile /home/svnroot/repository/authz.conf //权限配置文件
AuthType Basic //连接类型设置
AuthName "Subversion.tips" //连接框提示
AuthUserFile /home/svnroot/repository/authfile //用户配置文件
Require valid-user //采用何种认证
</Location>
//重启apache
# /opt/apache/bin/apachectl restart
//打开浏览器访问http://localhost/svn/test/,如果有东西显示就说明成功。 8.配置权限
Bash代码
1.1)增加用户
2.# htpasswd -c /home/svnroot/repository/authfile 用户名
3.//第一次设置用户时使用-c表示新建一个用户文件。回车后输入用户密码,完成对用户的增加
4.# htpasswd /home/svnroot/repository/authfile 用户名(加入新的用户,就不用-c了)
5.
6.2)权限分配
7.# vi /home/svnroot/repository/authz.conf
8. [groups]
9.admin=useradmin
10.devteamcs = useradmin,user1,user2//这里定义了一个用户组
11.[/]//对所有的项目,所有的用户都有读权限,admin用户有读写权限
12.@admin = rw
13.* = r
14.[test:/]//对test项目,
15.@devteamcs = rw
16.// 在 /usr/local/apache2/conf/httpd.conf 文件中配置,找到文件中的这两行:
17.User daemon
18.Group daemon
19. // 将daemon改为svnroot,组也做相应更改,让apache进程以svnroot的身份运行
20.//改完后是这个样子
21.User svnroot
22.Group svn
23.//重启apache
24. # /opt/apache/bin/apachectl restart
25.访问http://localhost/svn/test ,现在需要身份验证,且通过验证后应该可以看到信息
1)增加用户
# htpasswd -c /home/svnroot/repository/authfile 用户名
//第一次设置用户时使用-c表示新建一个用户文件。回车后输入用户密码,完成对用户的增加
# htpasswd /home/svnroot/repository/authfile 用户名(加入新的用户,就不用-c了)
2)权限分配
# vi /home/svnroot/repository/authz.conf
[groups]
admin=useradmin
devteamcs = useradmin,user1,user2//这里定义了一个用户组
[/]//对所有的项目,所有的用户都有读权限,admin用户有读写权限
@admin = rw
* = r
[test:/]//对test项目,
@devteamcs = rw
// 在 /usr/local/apache2/conf/httpd.conf 文件中配置,找到文件中的这两行:
User daemon
Group daemon
// 将daemon改为svnroot,组也做相应更改,让apache进程以svnroot的身份运行
//改完后是这个样子
User svnroot
Group svn
//重启apache
# /opt/apache/bin/apachectl restart
访问http://localhost/svn/test ,现在需要身份验证,且通过验证后应该可以看到信息 9.结束