【转】阿里云Ubuntu系统搭建SVN服务器
##SVN服务器相关软件安装
1、使用SSH远程服务器
(1)对于MAC OS/Liunx的用户直接打开终端输入
ssh 用户名@实例名,例如 ssh root@192.168.1.100
执行上面的命令后终端会提示输入密码,验证通过后会出现如下信息:
Welcome to Ubuntu 12.04.5 LTS (GNU/Linux 3.2.0-67-generic x86_64)
* Documentation: https://help.ubuntu.com/
New release '14.04.1 LTS' available.
Run 'do-release-upgrade' to upgrade to it.
Welcome to aliyun Elastic Compute Service!
Last login: Tue Oct 14 21:31:10 2014
(2)Windows的用户需要按照系统的要求安装指定的软件或者是直接使用WEB的终端进行访问
2、安装软件
依次在终端中执行下面的命令安装如下三个软件包:
(1)sudo apt-get install subversion
(2)sudo apt-get install apache2
(3)sudo apt-get install libapache2-svn
其中subversion是SVN必须的,apache2和libapache2-svn是为了配置SVN服务器支持通过HTTP访问
##SVN服务器配置
1、相关用户、组的设定
sudo addgroup subversion
sudo usermod -G subversion -a www-data
2、创建项目的目录
sudo mkdir /home/svn
3、配置Subversion
(1)配置dav_svn.conf文件
vim /etc/apache2/mods-available/dav_svn.conf
按照下面的步骤进行配置即可
<1>删除<Location /svn>和DAV svn这两行前面的注释

<2>删除SVNParentPath ...前面的注释,并且把后面的路径替换成创建的SVN的项目路径/home/svn

<3>删除AuthType Basic、AuthName “Subversion Repository”前面的注释,去掉AuthUserFile所在行前面的注释,并且修改后面的路径为/etc/subversion/dav_svn.passwd,去掉AuthzSVNAccessFile所在行前面的注释,并且修改后面的路径为/etc/subversion/dav_svn.authz,删除Require valid-user和</Location>前面的注释,具体如下所示:

其中:
/etc/subversion/dav_svn.passwd文件是SVN用户名和密码的配置,指定基本用户验证的密码文件存放的位置
/etc/subversion/dav_svn.authz文件是访问权限配置
(2)重启Apache 2 WEB服务器
sudo /etc/init.d/apache2 restart
4、创建SVN文件仓库
(1)创建指定的项目存放路径
cd /home/svn
mkdir project1
(2)更改版本库所示的用户、组
sudo chown -R root:subversion project1
(3)创建SVN仓库
sudo svnadmin create /home/svn/project1
(4)赋予组成员对所有新加入文件仓库的文件拥有相应的权限
sudo chmod -R g+rws project1
5、用户和权限配置
(1)创建dav_svn.passwd文件并添加用户admin001,执行命令后会提示要输入密码
sudo htpasswd -c /etc/subversion/dav_svn.passwd admin001
继续添加新用户,去掉-c,否则会覆盖本文件
sudo htpasswd /etc/subversion/dav_svn.passwd admin002
(2)创建授权文件
vim /etc/subversion/dav_svn.authz
里面加入project1的权限配置,如
[groups]
administrator=admin001,admin001
[project1:/]
@administrator=rw
(3)子目录权限
参考:https://blog.csdn.net/ls1120623840/article/details/78138189
库目录及具体权限如下图所示:
库目录 权限分组:

具体权限:(根目录下,svnadmin拥有所有权限,其他人只有读权限,要设置子目录权限,
需设置子目录上级的权限方可,设置个别文件权限如下:)

6、重启SVN服务器
killall svnserve
svnserve -d -r /home/svn/
至此SVN服务器搭建完成,可以在终端执行
svn checkout http://hostname/svn/project1 project1 --username 用户名 --password 密码 来checkout项目了
##相关问题
1、Apache和Tomcat端口号冲突
(1)修改/etc/apache2/ports.conf文件将Listen 80改成Listen 8080表示监听8080端口或者其他可用端口
(2)修改/etc/apache2/sites-enabled/000-default文件,修改<VirtualHost*:80>改成<VirtualHost*:8080>
【转】阿里云Ubuntu系统搭建SVN服务器的更多相关文章
- Ubuntu系统搭建SVN服务器
Ubuntu系统搭建SVN服务器 参考地址:http://git.devzeng.com/blog/aliyun-ubuntu-svn-server.html 安装软件 依次在终端中执行下面的命令安装 ...
- ubuntu 如何搭建svn 服务器
1.在终端中直接输入 sudo apt-get install subversion,选择安装即可 来这个subversion同时包含了服务端和客户端. 2.(可选)看版本命令 svnserve - ...
- ubuntu下搭建svn服务器
[ubuntu下搭建svn服务器] 1.创建目录 mkdir ~/svn/repository/ 2.创建仓库 svnadmin create repository 3.进入 repository/c ...
- Ubuntu环境搭建svn服务器
记录一次使用Ubuntu环境搭建svn服务器的详细步骤 一.查看是否已经安装svn 命令:svn如果显示以下信息,说明已安装 二.卸载已安装的svn 命令:sudo apt-get remove ...
- 【转】Ubuntu环境搭建svn服务器
记录一次使用Ubuntu环境搭建svn服务器的详细步骤 一.查看是否已经安装svn 命令:svn如果显示以下信息,说明已安装 二.卸载已安装的svn 命令:sudo apt-get remove -- ...
- 在阿里云Ubuntu 14.04 Linux服务器上安装docker
参考 How To Install and Use Docker: Getting Started 这篇最靠谱的文档在阿里云 Ubuntu 14.04 服务器上成功安装 docker . ---- ...
- 阿里云Ubuntu环境搭建Docker服务
经过昨天和今天的不断奋战,在阿里云里面搭建Docker并不easy. 所以我认为有必要记录下来,以供后人学习. 以及我自己的回想. 首先,查看我们的系统版本号: cat /etc/issue 的到的输 ...
- [FTP]通过FileZilla在阿里云主机上搭建ftp服务器
前一阵子租了一台服务器主机来玩,正好周末有时间研究了一下怎么搭建ftp server. 准备.首先要下载filezilla client和filezilla server, 下载地址: server: ...
- 本地虚拟机在ubuntu系统搭建nexus服务器
本地虚拟机在ubuntu系统上搭建nexus服务器 本地虚拟机在ubuntu系统上搭建nexus服务器所需软件: 虚拟机:VM或者Oracle VM VirtualBox 系统:ubuntu-14.0 ...
随机推荐
- 一千行 MySQL 学习笔记
Windows服务 -- 启动MySQL net start mysql-- 创建Windows服务 sc create mysql binPath= mysqld_bin_path(注意 ...
- 【 js 基础 】为什么 call 比 apply 快?
这是一个非常有意思的问题. 在看源码的过程中,总会遇到这样的写法: var triggerEvents = function(events, args) { var ev, i = -1, l = e ...
- 让你彻底搞懂JS中复杂运算符==
让你彻底搞懂JS中复杂运算符== 大家知道,==是JavaScript中比较复杂的一个运算符.它的运算规则奇怪,容易让人犯错,从而成为JavaScript中“最糟糕的特性”之一. 在仔细阅读了ECMA ...
- js实现禁止右键 禁止f12 查看源代码
document.oncontextmenu = function () { return false; }; document.onkeydown = function () { if (windo ...
- BZOJ5289: [Hnoi2018]排列
传送门 第一步转化,令 \(q[p[i]]=i\),那么题目变成: 有一些 \(q[a[i]]<q[i]\) 的限制,\(q\) 必须为排列,求 \(max(\sum_{i=1}^{n}w[i] ...
- 鼠标悬浮控制元素隐藏与显示 - css中鼠标的hover状态
需求:当鼠标移动到一个元素A身上时,另外一个元素B显示. 实现原理: A元素与B元素有一个相同的父级. B元素默认隐藏,A元素默认显示. 当鼠标移动到A元素身上时,也可以看做是移动到了A元素的父级身上 ...
- npm、cnpm、bower安装区别
简单地说,就是帮你下载好你需要的css或者js库,而且三者功能也都是一样的.那为什么要下载这3个不同的呢?据说npm容易被墙……而cnpm是淘宝的镜像,所以通常用cnpm代替npm.至于bower,是 ...
- MySql UNIX_TIMESTAMP和FROM_UNIXTIME函数讲解
MySql UNIX_TIMESTAMP和FROM_UNIXTIME函数讲解 by:授客 QQ:1033553122 1. unix_timestamp(date)将时间转换为时间戳,如果参数为空,则 ...
- bootstrap selectpicker 通过代码指定选中值 BootStrap selectpicker后台动态绑定数据 selectpicker 获取选中option的属性或者值
bootstrap-select使用 bootstrap selectpicker 通过代码指定选中值 $('#subjectno').selectpicker('val',(row.subjectn ...
- for之于while的优势
前言 for与while各有功效,下面就只列举for之于while的优势有哪些 优势 1.循环中提供了特殊的机会来将变量的作用域最小化.(无论是传统的还是for-each形式的)for循环,都允许声明 ...