Linux下搭建SVN服务器遇到的问题及解决方法


最近有一个朋友在阿里云上买了个服务空间,准备搭建一个网站。我呢,闲来无事,就准备在这个服务器上搭建一个SVN的服务器,方便我朋友后续进行项目开发。

于是,在网上找了一些搭建SVN的教程,挺简单的,三下五除二就全部搞定了,具体搭建过程我在这里就不说了,网上一搜到处都是。但在这其中也遇到了几个问题,断断续续也花了我两天时间才找到解决方法。现在分享出来,希望对其它童鞋有用。

1、checkout时,提示:URL svn://192.168.1.99/svntest doesn't exist...

奇怪,怎么会提示库不存在呢?肯定是哪里配置问题。后来尝试了半天,也在网上搜索了很久,终于发现问题所在。

如果你的svn库的路径为:/home/svn/svntest

那么你启动时,不能用命令:

svnserve -d -r /home/svn/svntest

而要用命令:

svnserve -d -r /home/svn/

2、commit时,提示:Authorization failed

开始一直以为是authz文件配置得不对,一直尝试,一直修改,还是不行,郁闷了。在确定authz的配置完全没问题后,开始查其它两个配置文件的问题。后来终于发现问题出在svnserve.conf这个文件。以下四行:

# anon-access = read
# auth-access = write
# password-db = passwd
# authz-db = authz

是被注释掉的,虽然文件说明里面说默认就是按注释掉的配置来执行,但好像并不是这样。放开注释:

anon-access = read
auth-access = write
password-db = passwd
authz-db = authz

问题解决。

PS:有些童鞋问文件上传到服务器后存放在服务器的哪个地方。

答:一般放在/home/svn/svntest/db/revs(根据我自己的目录结构)里面。

相关内容