要安装Subversion,您只需要简单的运行:
$ sudo apt-get install subversion
$ sudo apt-get install libapache2-svn
创建SVN仓库:
1。增加组,并且把用户加到组里):
sudo addgroup subversion
sudo usermod -G subversion -a www-data或huubuntu(linux用户)
2.结果看上去,像这样。
$ cat /etc/group|grep subversion
subversion:x:1001:www-data,exp
3、您需要注销然后再登录以便您能够成为subversion组的一员,然后就可以执行签入文件(Check in,也称提交文件)的操作了。
4、现在执行下面的命令
$ sudo mkdir /home/svn
$ cd /home/svn
$ sudo mkdir myproject
$ sudo chown -R root:subversion myproject
5、下面的命令用于创建SVN文件仓库:
$ sudo svnadmin create /home/svn/myproject
6、赋予组成员对所有新加入文件仓库的文件拥有相应的权限:
$ sudo chmod -R g+rws myproject
svn import -m "new_1" /optbak/httpd-2.2.17.tar.gz file:///home/svn/myproject/tar11
check out:
svn checkout file:///home/svn/myproject/
A myprojectsvn/tar11
A myprojectsvn/tar22
Checked out revision 2.
现在,您可以在本地或者远程通过svn://访问SVN了,您可以使用“svnserve”来运行svnserver,语法如下:
$ sudo svnserve -d --foreground -r /home/svn
# -d -- daemon mode
# --foreground -- run in foreground (useful for debugging)
# -r -- root of directory to serve
要了解更多信息,请输入:
$ svnserve --help
1、当您创建了SVN文件仓库,您可以修改/home/svn/myproject/conf/svnserve.conf来配置其访问控制。
例如,您可以取消下面的注释符号来设置授权机制:
# [general]
# password-db = passwd
现在,您可以在“passwd”文件中维护用户清单。编辑同一目录下“passwd”文件,添加新用户。语法如下:
username = password
#(注意行开始不要有多余空格)
要了解详情,请参考该文件。
2、当您执行了该命令,SVN就开始监听默认的端口(3690)。您可以通过下面的命令来访问文件仓库:
$ svn co svn://hostname/myproject myproject --username user_name
客户端check in,commit报错:Authorization failed
Authorization failed
SVN:认证失败
如果你是客户端,就让别人给你权限。
解决:如果能改文件,则尝试以下修改:
/home/svn/myproject/conf# ls
authz myproject passwd svnserve.conf
svnserve.conf:
[general]
anon-access = read
auth-access = write
password-db = passwd
authz-db = authz
passwd:
[users]
harry = harryssecret
authz:
[groups]
[/]
harry = rw
出现authorization failed异常,一般都是authz文件里,用户组或者用户权限没有配置好,只要设置[/]就可以,代表根目录下所
有的资源,如果要限定资源,可以加上子目录即可。
----------------------------------------------------------------------
# anon_access = read
改为
anon_access = none
即不允许匿名用户访问
还有个重要问题是SVN的备份问题,参考:
http://spiritfrog.javaeye.com/blog/448578
http://spiritfrog.javaeye.com/blog/250269
loading