由于GitHub的私有项目需要收费,gitlab对服务器的要求必须是4GB内存以上。对于一些个人的小型项目,想要免费的版本控制工具来管理自己的代码,又不想代码公开,无疑SVN是比较好的选择。windows下的SVN搭建比较简单,但是一般购买服务器选择Linux的还是比较多。下面就介绍在Linux系统下如何搭建自己的SVN服务器。

【安装步骤】

1.使用yum在线安装

$ yum install subversion

$ rpm -ql subversion  #查看安装位置.

2.创建svn版本库目录(此处演示创建多个)

$ mkdir -p /root/svn/project1

$ mkdir -p /root/svn/project2

3.创建版本库

$ svnadmin create /root/svn/project1

$ svnadmin create /root/svn/project2

【配置说明】

1.进入其中一个版本库的配置文件目录(此处只讲解其中一个版本库的操作说明)

$ cd /root/svn/project1/conf

authz 文件是权限控制文件

passwd 是帐号密码文件

svnserve.conf 是SVN服务配置文件

2.设置帐号密码

$ vim passwd

在[users]块中添加用户和密码,格式:帐号=密码,如renxing=renxing

3.设置权限

$ vim authz

在末尾添加如下代码:(备注:Linux下快速到达vim末尾的命令是:Shift+G.更多关于vim操作的命令请 参考这里)

[/]
renxing=rw
w=r

意思是版本库的根目录renxing对其有读写权限,w只有读权限

4. 修改svnserve.conf文件

$ vim svnserve.conf

打开下面的几个注释:

anon-access = none   #匿名用户可读 【参考:https://www.cnblogs.com/kccdzz/p/9414045.html】
auth-access = write  #授权用户可写
password-db = passwd #使用哪个文件作为账号文件
authz-db = authz     #使用哪个文件作为权限文件
realm = /root/svn/project1 #认证空间名,版本库所在目录

说明:project2的配置方法同上。

【启动svn版本库】 

启动当前svn版本库:

$ svnserve -d -r /root/svn

SVN默认的打开端口是3690,可以通过下面的命令查看:

$ netstat -antp | grep svn

centos7 打开防火墙端口:

$ sudo firewall-cmd --permanent --add-port=3690/tcp

$ sudo firewall-cmd --reload

如果是在阿里云购买的服务器,还要打开3690端口才能访问。

找到服务器的“配置规则”,点击“添加安全组规则”

在客户端测试:

$ svn checkout svn://127.0.0.1

之后输入passwd中输入的账号和密码即可检出代码。

备注:Linux下安装svn客户端的命令为: $ yum install svn

Linux(CentOS)系统下搭建svn服务器的更多相关文章

  1. linux系统Centos环境下搭建SVN服务器及权限配置

    linux系统Centos环境下如何搭建SVN服务器以及svnserve.conf.authz.passwd配置文件详细介绍   至于svn的概念,这里就不做详细阐述了,可以自行百度.简单来讲就是一个 ...

  2. Linux(Centos)下搭建SVN服务器

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

  3. CentOS系统下搭建tomcat服务器

    下载相应的linux版jdk和tomcat,本文讲解jdk版本jdk-7u79-linux-x64.tar.gz,tomcat版本apache-tomcat-7.0.69.tar.gz [配置jdk] ...

  4. Linux(Centos)系统上搭建SVN以及常见错误解答

    本文主要介绍怎样在Centos上搭建SVN,文章内容比较基础,适合小白用户学习. 1.Linux版本Centos 6.5 查看linux版本命令: cat /etc/issue 2.查看本机上是否已经 ...

  5. 【SVN】centos环境下搭建SVN服务器

    1.安装SVN,有些linux发行版自带SVN,可以用下面方法检测是否安装SVN. svn --version 如果 Subversion 客户端没有安装,命令将报告svn命令找不到的错误. 我们可以 ...

  6. Linux centos 6.5 搭建 svn服务器

    实例:web1 1.安装subversion #yum install subversion #mkdir -p /oop/svn/ //创建svn目录 #chmod -R 777 /oop/svn ...

  7. Windows和Linux环境下搭建SVN服务器

    --------------------------Windows下搭建SVN服务器----------------------------- 一.安装SVN服务端 软件包Setup-Subversi ...

  8. Ubuntu 14.04 下搭建SVN服务器 (转载自 http://www.linuxidc.com/Linux/2015-01/111956.htm)-------------我所用到是红色字体

    http://www.linuxidc.com/Linux/2015-01/111956.htm Ubuntu 14.04 下搭建SVN服务器 svn:// 安装软件包: sudo apt-get i ...

  9. Ubuntu 14.04 下搭建SVN服务器 svn://

    Ubuntu 14.04 下搭建SVN服务器 svn:// 安装软件包: sudo apt-get install subversion 之后选择SVN服务文件及配置文件的放置位置.我放在了/srv下 ...

随机推荐

  1. HBase表的架构原理

    HBase总体架构图 Hbase Table的基本单位是Region,一个Table相应多个Region.Table层级关系例如以下: Table       (HBase table)     Re ...

  2. Android Timer的应用示例

    package com.hyzhou.timerdemo1; import java.util.Timer; import java.util.TimerTask; import android.os ...

  3. PHP-003

    PHP函数大全(转) usleep() 函数延迟代码执行若干微秒.unpack() 函数从二进制字符串对数据进行解包.uniqid() 函数基于以微秒计的当前时间,生成一个唯一的 ID.time_sl ...

  4. linux命令之find和locate

    1.find / -name  log.xml   按照名字查找log.xml文件 2.locate log.xml     查找log.xml文件(效率高) 3.grep 'hive'  word. ...

  5. eclipse export runnable jar

    如果要导出可运行的JAR文件,需要选择Runnable Jar File. 方法/步骤     1. 选择要到处JAR文件的工程,右键选择“Export”:   2. 选择“Java-->Run ...

  6. poj_1236 强连通分支

    题目大意 有N个学校,这些学校之间用一些单向边连接,若学校A连接到学校B(B不一定连接到A),那么给学校A发一套软件,则学校B也可以获得.现给出学校之间的连接关系,求出至少给几个学校分发软件,才能使得 ...

  7. c++ 引用底层实现

    红色是我添加的,其他地方是原作者的. 主要是看了上面的这篇“从底层汇编理解 c++ 引用实现机制“的文章之后,觉得不错.就转了过来,同时,对文中的程序都在自己的机器上验证了一下. 使用的G++版本:g ...

  8. MQTT协议笔记之头部信息

    前言 记忆不太好的时候,只能翻看以前的文章/笔记重新温习一遍,但找不到MQTT协议有关订阅部分的描述,好不容易从Evernote中找到贴出来,这样整个MQTT协议笔记,就比较齐全了. SUBSCRIB ...

  9. 报错 ERROR in static/js/vendor.b3f56e9e0cd56988d890.js from UglifyJs

    开发vux项目在引入 // 表单验证组件-start import zh_CN from 'vee-validate/dist/locale/zh_CN' import Validator from ...

  10. 【原创】asp.net内部原理(三) 第三个版本 (最详细的版本)

    前言: 今天继续吧这个系列补齐,这几天公司的项目比较忙,回到家已经非常的累了,所以也没顾得上天天来这里分享一些东西和大家一起探讨,但是今天晚上我还是坚持打开电脑,分享一些asp.net生命周期的知识, ...