##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服务器的更多相关文章

  1. Ubuntu系统搭建SVN服务器

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

  2. ubuntu 如何搭建svn 服务器

    1.在终端中直接输入  sudo apt-get install subversion,选择安装即可 来这个subversion同时包含了服务端和客户端. 2.(可选)看版本命令 svnserve - ...

  3. ubuntu下搭建svn服务器

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

  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. 在阿里云Ubuntu 14.04 Linux服务器上安装docker

    参考 How To Install and Use Docker: Getting Started 这篇最靠谱的文档在阿里云 Ubuntu  14.04 服务器上成功安装 docker . ---- ...

  7. 阿里云Ubuntu环境搭建Docker服务

    经过昨天和今天的不断奋战,在阿里云里面搭建Docker并不easy. 所以我认为有必要记录下来,以供后人学习. 以及我自己的回想. 首先,查看我们的系统版本号: cat /etc/issue 的到的输 ...

  8. [FTP]通过FileZilla在阿里云主机上搭建ftp服务器

    前一阵子租了一台服务器主机来玩,正好周末有时间研究了一下怎么搭建ftp server. 准备.首先要下载filezilla client和filezilla server, 下载地址: server: ...

  9. 本地虚拟机在ubuntu系统搭建nexus服务器

    本地虚拟机在ubuntu系统上搭建nexus服务器 本地虚拟机在ubuntu系统上搭建nexus服务器所需软件: 虚拟机:VM或者Oracle VM VirtualBox 系统:ubuntu-14.0 ...

随机推荐

  1. ubuntu 18.04 设置固定ip

    # This file is generated from information provided by # the datasource.  Changes to it will not pers ...

  2. 【读书笔记】iOS-报刊杂志-Newsstand应用编程

    一,使用Newsstand Kit API 苹果公司在iOS5之后提供了电子报刊杂志开发API-Newsstand Kit.Newsstand Kit 只有3个类:NKLibrary,NKIssue和 ...

  3. Mybatis中使用循环遍历

    Mybatis中传参数的方法 1.使用注解绑定,mapper.xml 对应方法 不需要指定 parameterType,(推荐使用注解绑定方式) 方法接口: List<CalculateIdea ...

  4. C#加解密算法

    先附上源码 加密解密算法目前已经应用到我们生活中的各个方面 加密用于达到以下目的: 保密性:帮助保护用户的标识或数据不被读取. 数据完整性:帮助保护数据不被更改. 身份验证:确保数据发自特定的一方. ...

  5. VMware Linux下拖拽补丁vmtools的安装和卸载

    Linux下拖拽补丁vmtools的安装和卸载 by:授客 QQ:1033553122 Vmware 8.0.4为例子 步骤1.VM->Install Vmware Tools... 步骤2.查 ...

  6. 【Python】控制鼠标点击

    from pymouse import PyMouse m = PyMouse() a = m.position() #获取当前坐标的位置 print(a) m.move(50, 500) #鼠标移动 ...

  7. ABP(ASP.NET Boilerplate Project)框架探讨

    从官网上下载下来带Module-Zero的abp框架. vs2015打开解决方案. 首先让系统run起来.把webconfig数据库连接改一下.启动程序. 发现报错:“本地语言指定”的错误,之后运行n ...

  8. SQLServer的TDE加密

    TDE的主要作用是防止数据库备份或数据文件被偷了以后,偷数据库备份或文件的人在没有数据加密密钥的情况下是无法恢复或附加数据库的. 首先创建SQL Server中master系统数据库的MASTER K ...

  9. 动态修改css文件中,具体的class中的个别属性值。

    function setStyleSheetObjCssClassProperty(pStyleSheetObj, pSelectorText, pProperty, pValue) { var pS ...

  10. PostgreSQL数据加载工具之pg_bulkload

    1. 介绍 PostgreSQL提供了一个copy命令的便利数据加载工具,copy命令源于PostgreSQL数据库,copy命令支持文件与表之间的数据加载和表对文件的数据卸载.pg_bulkload ...