安装subversion以及对应的apache模块,此处假设我们已经安装好了服务器,参加服务器安装篇
$ sudo apt-get install subversion
$ sudo apt-get install libapache2-svn
创建版本库,并增加组subversion,并且把用户加到组里,因为ubuntu下面默认的apache组用户叫www-data
$ sudo addgroup subversion
$ sudo usermod -G subversion -a www-data
创建svn版本库
$ sudo mkdir /home/svn
$ cd /home/svn
创建 SVN 文件仓库
$ sudo svnadmin create /home/svn/myproject
赋予组成员对所有新加入文件仓库的文件拥有相应的权限:
$ sudo chmod -R g+rws myproject
$ sudo chown -R root:subversion myproject
访问方式
file:/// 直接访问本地硬盘上文件仓库
http:// 通过 WebDAV 协议访问支持 Subversion 的 Apache 2 Web 服务器
https:// 类似 http://,支持 SSL 加密
svn:// 通过自带协议访问 svnserve 服务器
svn+ssh:// 类似 svn://,支持通过 SSH 通道
在服务器上测试的时候可以这么操作
$ svn co file:///home/svn/myproject
或者
$ svn co file://localhost/home/svn/myproject
如果通过,我们可以来远程操作,实现协同开发
您必须加入下面的代码片段到您的 /etc/apache2/mods-available/dav_svn.conf中, 在http.conf中也可以
DAV svn
SVNPath /home/svn/myproject
AuthType Basic
AuthName "test"
AuthUserFile /etc/subversion/passwd
Require valid-user
接下来,您需要创建 /etc/subversion/passwd 文件,该文件包含了用户授权的详细信息。要添加用户,您可以执行下面的命令:
sudo htpasswd -c /etc/subversion/passwd user_name
然后可以通过下列命令来访问
$ svn co //hostname/svn/myproject myproject --username user_name
这样就大功告成了。在windows端可以安装subversion的客户端来测试,导入项目后,用svn log来查看,是否能看到user_name做了什么事情。
至此,一个可以供协同开发的svn 服务器就搭建成功了
延伸阅读:
Linux基础知识:mysql安装与主从配置1 sudochgrp-Rmysql/var/lib/mysql sudochmod-R770/var/lib/mysqlsudoservicemysqldstart第一次安装设置密码:mysql_secure_installation 回车,根据提示输......[更多]
Linux基础知识:Ubuntu下配置protobuf 最近想研究protobuf,尝试了很多次都没有成功,我用的是ubuntu,在虚拟机下面的,protobuf也用了很多版本但都没有成功。最终用的是2.5.0版本才成功,话不多说直接开始 梳理一......[更多]
Linux网络管理:Makefile文件和shell脚本 1、在Makefile中只能在target中调用Shell脚本,其他地方是不能输出的。比如如下代码就是没有任何输出: VAR="Hello" echo"$VAR" all: ..... 以上代码......[更多]
Linux网络管理:Centosredmine安装教程 本教程使用Centos6.364位版本。以#开头代表需要再linux上执行的指令。安装Redmine一定要注意版本对应,不能一个高一个低,否则无法安装!!! 1、先安装Mysql http://b......[更多]