一、安装SVN
1.安装包
$ sudo apt-get install subversion
2.创建项目目录
$ sudo mkdir /home/svn
$ cd /home/svn/
$ sudo mkdir prj (工程名)
$ sudo chmod -R g+rws prj
3.创建svn文件仓库
$ sudo svnadmin create prj
4.访问权限设置
修改prj/conf目录下的svnserve.conf、passwd、authz等文件;
编辑svnserve.conf文件,把下面的行取消注释,并需要顶格:
anon-access = read (匿名用户的权限;默认只读,改为none拒绝访问)
auth-access = write (认证用户的权限)
password-db = passwd
authz-db = authz
编辑passwd文件,如下:
[users]
gaojs = 123 (用户名和密码)
nl = 123
编辑authz文件,如下:
[groups]
admin = gaojs
test = nl
[/]
@admin = rw
* = r
5. 开启svnserve,以SVN根目录开启:
$ svnserve -d -r /home/svn
-d 表示svnserver以“守护”进程模式运行
-r 指定文件系统的根位置(版本库的根目录)
6.检查是否正常启动
$ netstat -ntlp
可以看到有一个端口为3690的地址,表示启动成功
(如果使用Apache连接,则跳过下步)
7.局域网访问,checkout出来SVN库的文件
svn checkout svn://192.168.157.133/prj
或者简写为:
svn co svn://192.168.157.133/prj
二、使用Apache配置SVN
1.安装必要软件
$ sudo apt-get install libapache2-svn apache2
2.修改apache配置文件/etc/apache2/mods-available/dav_svn.conf
<Location /svn/prj>
DAV svn
SVNPath /home/svn/prj
AuthType Basic
AuthName "Subversion Repository"
AuthUserFile /etc/subversion/passwd
#<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
#</LimitExcept>
</Location>
如果需要用户每次登录时都进行用户密码验证,请将<LimitExcept GET PROPFIND OPTIONS REPORT>与</LimitExcept>两行注释掉。
然后把这个版本仓库目录授权给apache读写:
$ sudo chown -R www-data:www-data prj
然后重启Apache 2 Web 服务器:
$ sudo /etc/init.d/apache2 restart
3.创建 /etc/subversion/passwd 文件,该文件包含了用户授权的详细信息
$ sudo htpasswd -c /etc/subversion/passwd gaojs
它会提示您输入密码,当您输入了密码,该用户就建立了。
“-c”选项表示创建新的/etc/subversion/passwd文件,所以user_name所指的用户将是文件中唯一的用户。
如果要添加其他用户,则去掉“-c”选项即可:$ sudo htpasswd /etc/subversion/passwd other_user_name
4.您可以通过下面的命令来访问文件仓库:
$ svn checkout http://192.168.157.133/svn/prj prj --username gaojs
或者通过浏览器:http://192.168.157.133/svn/prj