转自:http://www.linuxidc.com/Linux/2013-05/84693.htm

Ubuntu Server搭建svn服务以及迁移方法

采用apache+svn,http访问方式。

先确定安装了apache,没有安装则用以下命令:

  1. sudo apt-get install apache2

然后安装subversion及svn-apache连接库:

  1. sudo apt-get install subversion
  2. sudo apt-get install libapache2-svn

增加svn用户组,用于管理svn,并加入到www-data的apache组:

  1. sudo addgroup subversion
  2. sudo usermod -G subversion -a www-data

然后可以创建svn项目仓库了:

  1. # 一般可以将项目仓库建立到/home/svn目录
  2. # 假设项目名为myproject,先建立空目录
  3. $ sudo mkdir /home/svn
  4. $ cd /home/svn
  5. $ sudo mkdir myproject
  6. $ sudo chown -R root:subversion myproject
  7. #创建为svn项目,使用以下命令
  8. $ sudo svnadmin create /home/svn/myproject
  9. # 然后才赋予组成员对所有新加入文件仓库的文件拥有相应的权限:
  10. # 如果命令顺序搞错,可能会报错,请参照官方wiki
  11. $ sudo chmod -R g+rws myproject

最后是配置apache,用http协议访问svn服务:

  1. # 在安装了libapache2-svn时会自动生成该文件
  2. $ sudo vi /etc/apache2/mods-available/dav_svn.conf

编辑dav_svn.conf配置文件,内有注释,可以去掉前面的#使语句生效,最后内容大概如下即可:

  1. <Location/svn> #/svn表示http://hostname/svn/myproject
  2. DAV svn
  3. SVNParentPath /home/svn #配置仓库父目录
  4. AuthType Basic
  5. AuthName "ToFishes Project Svn"
  6. AuthUserFile /etc/subversion/passwd #svn用户文件
  7. AuthzSVNAccessFile /etc/subversion/authz #授权访问文件
  8. Require valid-user
  9. </Location>

svn用户文件/etc/subversion/passwd 和 授权访问文件/etc/subversion/authz是不存在的,需要手动创建。

svn用户文件可以通过命令创建:

  1. #首次创建需要加-c选项,同时可以增加一个svn用户
  2. #执行该命令会提示为新用户user_name设置密码
  3. sudo htpasswd -c /etc/subversion/passwd user_name
  4. #以后添加新用户,需要去掉-c选项,否则以前的用户就被覆灭了
  5. sudo htpasswd /etc/subversion/passwd new_name

用户是可以添加了,同时需要管理授权,用于多个svn项目,划分不同的用户组:

用vi /etc/subversion/authz编辑授权文件,无文件则编辑并保存后会自动创建,无需担心。

授权文件内容格式如下:

  1. #用户组指令
  2. [groups]
  3. #格式为  组名 = 用户名1,用户名2
  4. group1 = user1, user2
  5. group2 = user1, user3
  6. #other groups...
  7. #格式为  svn项目的仓库名:对应目录
  8. [svn_repository_name:/]
  9. #设置组的权限,r=read, w=write
  10. @group1= rw
  11. [svn_repository_name2:/web/css]
  12. @group2= rw

改完最后重启apache : sudo /etc/init.d/apache2 restart。这样工作就全部完成了。

其中访问地址是什么呢,只要当前服务器已经绑定了一个域名,并且在apache中启用了此域名的虚拟主机。

比如能正常访问 http://www.linuxidc.com/, 那么svn项目的访问地址就是 http://www.linuxidc.com/svn/项目名。

Ubuntu Server搭建svn服务以及迁移方法【转】的更多相关文章

  1. Ubuntu server 搭建Git server

    Ubuntu server 搭建Git server,git相比svn,最主要就是分布式了,每个客户端用户的本地都是一个版本管理控制器. Ubuntu server 版本为12.04 搭建步骤如下: ...

  2. Ubuntu server 搭建Git server【转】

    转自:http://www.cnblogs.com/candle806/p/4064610.html Ubuntu server 搭建Git server,git相比svn,最主要就是分布式了,每个客 ...

  3. Linux环境搭建SVN服务

    一.准备工作 首先要保证自己的linux电脑能上外网,我这电脑因为是新的,没有配置网络,所以再这块花费了点时间. 1.检查ip信息 >ifconfig 2.检查DNS服务器 >cat  / ...

  4. Ubuntu环境搭建svn服务器

    记录一次使用Ubuntu环境搭建svn服务器的详细步骤 一.查看是否已经安装svn 命令:svn如果显示以下信息,说明已安装   二.卸载已安装的svn 命令:sudo apt-get remove ...

  5. 【转】Ubuntu环境搭建svn服务器

    记录一次使用Ubuntu环境搭建svn服务器的详细步骤 一.查看是否已经安装svn 命令:svn如果显示以下信息,说明已安装 二.卸载已安装的svn 命令:sudo apt-get remove -- ...

  6. Windows10环境下使用VisualSVN server搭建SVN服务器

    参考: Windows10环境下使用VisualSVN server搭建SVN服务器 要搭建个svn用.之前自己的服务器用的乌龟.后来用了这个VisualSVN server. 具体教程见上链接.暂无 ...

  7. ubuntu下搭建svn服务器

    [ubuntu下搭建svn服务器] 1.创建目录 mkdir ~/svn/repository/ 2.创建仓库 svnadmin create repository 3.进入 repository/c ...

  8. Ubuntu系统搭建SVN服务器

    Ubuntu系统搭建SVN服务器 参考地址:http://git.devzeng.com/blog/aliyun-ubuntu-svn-server.html 安装软件 依次在终端中执行下面的命令安装 ...

  9. Linux上搭建SVN服务

    环境:centos7 一.搭建svn服务 1. 安装svn yum -y install subversion 2. 创建一个目录作为svn服务的地址(svn://192.168.0.2:3690 访 ...

随机推荐

  1. Sublime Text 3 快捷键

    选择类Ctrl+D 选中光标所占的文本,继续操作则会选中下一个相同的文本.Alt+F3 选中文本按下快捷键,即可一次性选择全部的相同文本进行同时编辑.举个栗子:快速选中并更改所有相同的变量名.函数名等 ...

  2. 基于keepalived搭建MySQL的高可用集群

    MySQL的高可用方案一般有如下几种: keepalived+双主,MHA,MMM,Heartbeat+DRBD,PXC,Galera Cluster 比较常用的是keepalived+双主,MHA和 ...

  3. 表单提交与后台PHP如何接口?

    在网页中,常常有这样那样的表单需要提交,比如登陆,比如注册,比如查询,比如填写问卷.在这样的表单提交过程中,我们究竟向后台提交了什么,是以什么形式提交的,是一个很值得探讨的问题. 提交了什么——就是我 ...

  4. Windows及Linux平台下的计时函数总结

    本文对Windows及Linux平台下常用的计时函数进行总结,包括精度为秒.毫秒.微秒三种精度的各种函数.比如Window平台下特有的Windows API函数GetTickCount().timeG ...

  5. 从零开始学ios开发(八):Autorotation and Autosizing

    不好意思,这一篇间隔的时间有点长,最近实在是事情太多,耽搁了,好了,长话短说,下面继续学习ios. 这次学习的内容是Autorotation和Autosizing,Autorotation就是屏幕内容 ...

  6. 鸟哥之安裝 CentOS7.x

    http://linux.vbird.org/linux_basic/0157installcentos7.php since 2002/01/01 新手建議 開始閱讀之前 網站導覽 Linux 基礎 ...

  7. HDU 2112 HDU Today (Dijkstra算法)

    HDU Today Time Limit: 15000/5000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others) Total ...

  8. ASP.NET状态服务及session丢失问题解决方案总结

    原文:ASP.NET状态服务及session丢失问题解决方案总结[转载] asp.net Session的实现: asp.net的Session是基于HttpModule技术做的,HttpModule ...

  9. Activity的直接子类

    Activity的直接子类 AccountAuthenticatorActivity, AliasActivity ExpandableListActivity FragmentActivity Li ...

  10. 一道Javascript面试题引发的血案

    文章首发于szhshp的第三边境研究所,转载请注明 先来看几道面试题,公司的开发们都尝试做了一下,然而基本没有人能够全部答对. 覆盖的考点很多,也有一些难度,题目挺有意思建议手动执行一边玩玩. Que ...