用了一段时间的FreeBSD,感觉用作桌面系统不是很爽,很多东西都只有Linux版的,有的虽然可以自己从ports中编译吧,刚开始感觉不错,但是如果要编译的东西很大的话等待起来就比较漫长而痛苦了,衡量了一下,昨天还是狠心把FreeBSD给干掉了,装上了ubuntu,七七八八的把常用的都配起来了,比较简单,但是碰上配置subversion的时候老是出问题,没办法将文件导入到创建好的仓库中去,昨天搜索了一些文章,照着做了一下都不管用,今天下班回来不死心,又搜了一下,总算解决了问题,下面大部分内容都是直接从原文翻译过来的(http://www.jessejcollins.com/blog/index.php?/archives/32-How-To-Setup-Subversion-with-Apache2-on-Ubuntu.html):
首先是安装apache2和subversion:
sudo apt-get install apache2
sudo apt-get install subversion
sudo apt-get install libapache2-svn
这里都好说,照着敲就行了,随后的配置我先按照在Windows下的方式来进行,结果当然是行不通了:(,以下是正确的配置步骤:
编辑dav_svn.conf文件:
sudo vim /etc/apache2/mods-available/dav_svn.conf
将# DAV svn和# SVNPath /var/lib/svn前的#去掉,并将/var/lib/svn改成你自己要创建的仓库的位置,我的仓库是创建在/home/svn下,
就将其改成/home/svn:
DAV svn
SVNPath /home/svn
配置用户认证
将下面几行前面的#去掉以打开基本的用户认证:
# AuthType Basic
# AuthName "Subversion Repository"
# AuthUserFile /etc/apache2/dav_svn.passwd
将
<LimitExcept GET PROPFIND OPTIONS REPORT>
Require valid-user
</LimitExcept>
改为
<LimitExcept>
Require valid-user
</LimitExcept>
然后重启Apache:
sudo /etc/init.d/apache2 restart
现在就可以创建Subverion的仓库了:
sudo mkdir /home/svn
sudo svnadmin create /home/svn
改变该目录的拥有者,使得Apache拥有写权限:
sudo chown -R www-data:www-data /home/svn
创建一个认证用户(下面的命令是创建一个用户名为bigbambo的用户):
sudo htpasswd2 -c /etc/apache2/dav_svn.passwd bigbambo
导入文件:
svn import /projects/base http://localhost/svn/base -m "Initialization"
这样一个基本的仓库就创建好了,可以通过http://localhost/svn/base来访问了。