1 先查看是否已经安装了svn

如果没有安装svn则:

ubuntu@ip----:~$ svn --version
The program 'svn' is currently not installed. You can install it by typing:
sudo apt-get install subversion

如果已经安装svn则提示svn版本号:

cfj@cfj-virtual-machine:~$ svn --version
svn,版本 1.9. (r1800392)
编译于 Mar ,:: 在 x86_64-pc-linux-gnu Copyright (C) The Apache Software Foundation.
This software consists of contributions made by many people;
see the NOTICE file for more information.
Subversion is open source software, see http://subversion.apache.org/

2 ubuntu安装svn:

先更新一下(可选)

sudo apt-get update

在线安装命令:

sudo apt-get install subversion

3 创建版本库

在/opt/下面用mkdir命令创建目录svn以及子目录repository。目录结构: /opt/svn/repository

更改更改repository文件夹的权限 改为777

sudo chmod -R  /opt/svn/repository

将刚刚创建的目录利用svn命令指定为版本库:

sudo svnadmin create /opt/svn/repository

设置完成之后在repository下面会生产几个文件夹和文件

主要的配置文件在conf文件夹下面:svnserve.conf,passwd,authz

4 修改repository文件夹下面的内容,完善配置

  • 首先修改db文件夹的权限,改为777。db文件夹是存储svn文件的地方
sudo chmod -R  /opt/svn/repository/db
  • 其次修改con文件夹下面的svnserve.conf文件
ubuntu@ip----:/opt/svn/repository$ cd conf
ubuntu@ip----:/opt/svn/repository/conf$ sudo vi svnserve.conf

#匿名用户可读

anon-access = read(可改成none,即不可读)

#权限用户可写
auth-access = write
#密码文件为passwd
password-db = passwd
#权限文件为authz
authz-db = authz

(去掉前面的#,并且顶格,不然可能会报错)

  • 再者修改con文件夹下面的passwd文件,增加用户和用户密码

格式:用户名=密码(明文)

sudo vi passwd

以上设置用户为admin密码为admin

  • 最后修改con文件夹下面的authz文件,增加用户组,目录认证,组权限
sudo vi authz

如果组内有多个人可以逗号分隔如:组名owner,组员user1,user2则:owner=user1,user2

对组的访问权限设置:rw,r,w。组名前面加@

@owner=rw

如果单用户设置则一个用户一行:

user1=rw

单库模式则设置为:[/] 本例子为单库模式

5 启动svn版本库

svnserve -d -r /opt/svn/repository

-d:表示在后台运行 ,-r:指定服务器的根目录

启动之后可以查看进程:

ubuntu@ip----:/opt/svn/repository/conf$ ps -ef|grep svnserve
ubuntu : ? :: svnserve -d -r /opt/svn/repository
ubuntu : pts/ :: grep --color=auto svnserve

如果需要停止,则kill -9 进程号

查看端口号,默认端口3690

sudo netstat -ntlp

6 访问:通过svn://服务器ip/文件夹名字 从svn客户端访问服务器。默认svn协议。如果要配置http或者https则需要安装apache。

本例因为是设置的[/],则svn://ip地址/

就可以访问

注意:如果是阿里云或者亚马逊的服务器,可能svn端口号没有对外开通,需要在控制台中配置。

参考:

https://blog.csdn.net/sm_wang/article/details/78656120
http://www.runoob.com/svn/svn-start-mode.html
https://blog.csdn.net/u011781521/article/details/54981945
http://wiki.ubuntu.org.cn/SubVersion#.E7.9B.B4.E6.8E.A5.E8.AE.BF.E9.97.AE.E6.96.87.E4.BB.B6.E4.BB.93.E5.BA.93.28file:.2F.2F.29

Linux (Ubuntu)安装svn的更多相关文章

  1. Linux下安装SVN,仓库创建,用户权限管理

    Exported from Notepad++           Linux下安装SVN,仓库创建,用户权限管理 1.SVN安装 Ubuntu系统下安装:sudoapt-getinstallsubv ...

  2. linux下安装svn出现configure: error: We require OpenSSL; try --with-openssl

    linux下安装svn出现configure: error: We require OpenSSL; try --with-openssl http://blog.csdn.net/woshixion ...

  3. ubuntu安装svn manager

    环境:系统ubuntu14.04 0. 更新软件库 sudo apt-get update sudo apt-get upgrade -y 1. 安装apache,svn,svn的apache模块 s ...

  4. linux下安装svn

    linux下SVN服务器如何搭建和使用 | 浏览:12117 | 更新:2013-09-18 14:28 | 标签:linux linux下SVN服务器如何搭建和使用?说到SVN服务器,想必大家都知道 ...

  5. linux: Ubuntu安装samba的问题

    Ubuntu安装samba的问题 http://blog.csdn.net/jk110333/article/details/8920841 root@ubuntu:~# apt-get instal ...

  6. [Linux]ubuntu安装基本流程

    ubuntu安装基本流程 1.设置分辨率2.设置语言环境3.设置服务器镜像源4.添加终端5.apt.apt-get更新和升级系统软件 sudo apt update/upgrade sudo apt- ...

  7. linux 下安装svn服务

    鉴于在搭建时,参考网上很多资料,网上资料在有用的同时,也坑了很多人 本文的目的,也就是想让后继之人在搭建svn服务器时不再犯错,不再被网上漫天的坑爹作品所坑害,故此总结 /******开始****** ...

  8. Linux(Ubuntu)安装Swift和Swiftlint

    很多时候iOS开发完毕需要接入CI中,而很多CI是基于Linux的,需要在Linux平台安装Swift和Swiftlint,下面就是针对这两个软件的安装步骤. Swift安装 环境 系统:Ubuntu ...

  9. linux Ubuntu安装后没有引导 解决方案

    用EasyBCD添加ubuntu grub2引导,适用于12.04 及之前版本的ubuntu安装好easybcd后运行,之后看图

随机推荐

  1. Ubuntu系统---以virtualenv方式安装Tensorflow-CPU

    Ubuntu系统---以virtualenv方式安装Tensorflow-CPU 一.安装环境 环境:Ubuntu18.04+CPU+python2.7 本文介绍:如何在ubuntu上以virtual ...

  2. Redis主从复制(读写分离)(四)

    Redis主从复制(读写分离) 克隆三台linux虚拟机   9.1.1.克隆虚拟机   9.1.2.生成新的mack地址 9.1.3.主从复制配置 redis主从复制 概述 1.redis的复制功能 ...

  3. Python 字典 (4) 持续更新

    字典一种用名字来引用值的数据结构,这种数据结构称为 映射(mapping) .字典中的键可以是数字.字符串和元组. 字典 创建和使用 创建 phonebook = {'Aaron':133000000 ...

  4. PHP即时通讯设计实现

    详解即时通讯设计实现(PHP+GatewayWorker+Redis) 需要实现的功能 一对一聊天(私聊) 一对多聊天(群聊) 类似QQ,微信等聊天列表 实时消息 显示 工具选择 GatewayWor ...

  5. ec20 queclocator V1. 0 test

    AT+QICSGP=1,1,"UNIWAP","","",1 AT+QIACT=1 AT+QLOCCFG="contextid&q ...

  6. git lfs setpu(4)

    reference: https://packagecloud.io/github/git-lfs/installhttps://zzz.buzz/zh/2016/04/19/the-guide-to ...

  7. vue项目更换目录后执行npm run dev 就报错(新手进)

    在我们搭建好一个VUE项目的环境后,觉得这个项目存放的位置不好,想移动一下,但是移动后我们发现执行npm run dev就会报下面的错误: 明明只是移动了一下位置,就报错,实在是太恶心了. 但是只要我 ...

  8. C++虚函数和成员函数内存 this指针问题

    father* p=new son; p->disp(...); 发现有好多人this指针的本质有错误的认识,估计不少人一说起this指针,脑袋立即反应出:那个类里使用的this指针,那么这个指 ...

  9. Python装饰器的应用场景

    装饰器的应用场景 附加功能 数据的清理或添加: 函数参数类型验证 @require_ints 类似请求前拦截 数据格式转换 将函数返回字典改为 JSON/YAML 类似响应后篡改 为函数提供额外的数据 ...

  10. Java基础_枚举类型

    作用:让数据更简洁,更易读,增加代码可读性. 为了用1,2,3,4,5分别表示老师,学生,小组,班主任,后勤,可以直接设置一个变量,让roleType = 1,但这样写代码可读性差. 也可以定义一个成 ...