Centos7(linux)搭建版本控制服务器(svn+apache)

1.简介:
版本控制服务器:
版本控制(Revision control)是一种软体工程技巧,籍以在开发的过程中,确保由不同人所编辑的同一档案都得到更新。
SVN:
SVN(subversion)是版本管理工具,是CVS的接班人。目前,绝大多数开源软件都使用svn作为代码版本管理软件。
作为运维人员来说,安装和配置SVN服务器和客户端是必须要掌握的内容。
常见的版本控制:
Cvs:由于之前cvs编码的问题,现在大多数软件开发公司都使用SVN替代了cvs
Svn:集中式版本控制器
Git:分布式版本控制器
2.SVN服务器运行模式:
模式1:SVN服务器单独运行,监听端口:3690,访问方式:SVN : //ip
模式2:SVN服务器+Apache,监听端口:80,访问方式:http : //ip
3.安装:
安装SVN和Apache服务器,mod_dav_svn模块
Mod_dav_svn模块:apache http服务器的插件,可以让版本库通过http协议,在网站上展现
Yum install -y subversion httpd mod_dav_svn

创建版本库:mkdir /var/repos
项目仓库:svnadmin create /var/repos/mingdeng3000 (仓库名随便取)
svnadmin create /var/repos/nike (创建仓库 mingdeng3000 和 nike)

svn自带用户权限配置文件:在/var/repos/mingdeng3000/conf下的 authz , passwd , svnserve.conf文件
(由于我们用apache的,所以暂时不用svn自带)
4.启动SVN:
svnserve -d -r /var/repos/ (-d,指定svn后台运行;-r,指定svn的根目录或版本库)
查看是否启动:Ps aux | grep svn; netstat -atnpu | grep 3690;

5.查看Apache支持subversion的两个动态库有没有安装成功。
一般默认在/usr/lib64/httpd/modules下,有没有mod_dav_svn.so和mod_authz_svn.so模块
6.配置Apache通过mod_dav_svn模块访问到svn服务器。
编辑:Vim /etc/httpd/conf.d/subversion.conf(手写,默认7不存在,6存在此文件)(让apache支持svn)
写入的内容:
<Location /svn> #####注释####apache的虚拟目录,后面通过http://192.68.27.101/svn来访问mingdeng3000这个仓库
DAV svn
SVNParentPath /var/repos ###注释####存放我这mingdeng3000这个库的根目录
AuthType Basic
AuthName "SVN server of mingdeng3000! ###注释###apache认证时弹出的消息
AuthUserFile /home/svn/passwd #####注释####passwd文件存储用户名和密码
AuthzSVNAccessFile /home/svn/auth###注释###存放用户的权限
Require valid-user
</Location>

7.建立本地访问控制文件/home/svn/passwd,后期通过httpd服务器访问svn时,会使用这个文件中的用户信息验证用户和密码
mkdir /home/svn
htpasswd -c /home/svn/passwd mingdeng,用户:mingdeng密码123.123
htpasswd /home/svn/passwd john ,用户nike,密码321.321
8.创建用户权限管理文件:
vim /home/svn/auth
[/] #####注释####项目仓库根目录下,有2个仓库,mingdeng都有读写权限
mingdeng=rw
[nike:/] ########注释#####nike仓库目录下,用户john只对nike有读写权限
john=rw

修改版本库权限
Chown -R apache:apache /var/repos或者 chmod 777 /var/repos
9.启动apache:
systemctl start httpd.service
10.访问svn:
浏览器:http://ip/svn/仓库名
输入账号密码就行
第一次访问会显示版本0,因为没文件

11.下载并安装svn的Windows客户端:
http://tortoisesvn.net/about.zh.html 操作系统多少位就下载多少位的
安装好后,新建一个文件夹svnclient,里面鼠标右键点击svn checkout,自动同步服务器svn

12.验证svn:

Windows客户端:拷贝几个文件到新建文件夹svn,没上传时文件上有“?”号标识符,右键点击svn commit上传文件到想去的库。
版本从0变为1了。
Linux客户端: svn checkout http://192.168.80.240/svn/mingdeng3000/
先输入当前Linux登录密码(我这是root),再输入svn账号密码。
登录完后,会自动下载仓库的文件,保存到当前路径下自动生成mingdeng3000/文件夹里(仓库nike同理)

svn+apache搭建版本控制服务器的更多相关文章

  1. CentOS 7 使用SVN+Apache搭建版本控制服务器

    svn简介 Subversion是一个免费/开源的版本控制系统, Subversion 可以跨越时间地对文件和目录, 以及它们的修改进行管理. 这就允许你恢复 数据的旧版本, 或检查数据的修改历史. ...

  2. 实战:使用SVN+apache搭建一个版本控制服务器

    今天讲的内容: 实战:使用SVN+apache搭建一个版本控制服务器 每天: 10:00 晚上:21:00 服务端:xuegod63.cn   IP:192.168.10.63 服务概述: SVN(s ...

  3. 在Linux上用Apache搭建Git服务器

    在Linux上用Apache搭建Git服务器   最近在学Linux,终于在Linux上用Apache搭建起了Git服务器,在此记录一下. 服务器:阿里云服务器 Linux版本:CentOS 6.5 ...

  4. windows下svn+apache搭建svn服务器

    使用软件: apache_2.0.55-win32-x86-no_ssl.msi Setup-Subversion-1.5.3.msi TortoiseSVN-1.5.10.16879-win32-s ...

  5. Virtual Box + CentOS Minimal + Apache搭建Web服务器

    本文并不介绍关于Virtual Box, CentOS, Apache的安装, 主要针对安装后相关的配置, 使宿主机(Host)可以访问客户机(Guest: CentOS in Virtual Box ...

  6. Centos7 搭建Svn+Apache服务器

    Svn客户端搭建 1.yum install subversion 2.查看安装版本 svnserve --version 3.创建SVN版本库目录 mkdir -p /opt/svn 4.创建版本库 ...

  7. 个人环境搭建——版本控制SVN

    版本控制SVN SVN服务器配置: 第一部分:svn服务器搭建(主要是四步走) 参考:http://www.son1c.cn/show/920.html 一,安装Subversion sudo apt ...

  8. [源码管理] ubuntu中svn简明用法:服务器搭建+客户端使用

    本文是对网络上前人的优秀文章加以实践验证后所整理(修正或补充) 第一部分:svn服务器搭建(主要是四步走) 参考:http://www.son1c.cn/show/920.html 一,安装Subve ...

  9. 用 Apache James 搭建邮件服务器来收发邮件实践(一)(转)

    Apache James 简称 James, 是 Java Apache Mail Enterprise Server的缩写.James 是100%基于Java的电子邮件服务器.它是一种独立的邮件服务 ...

随机推荐

  1. [考试反思]1001csp-s模拟测试(b):逃离

    如你所见,b组题,除了NC乱入直奔T2抢了我一个首杀以外A层学过FFT的人都没有参加. 竞争压力很小,题又简单,所以就造就了6个AK. 然而并不计入总分,我仍然稳在第二机房. T1lyl16分钟切掉我 ...

  2. jQuery源码分析--为什么在参数列表中传入undefined

    (function(window, undefined){ //jQuery code; })(window); 为什么要传入undefined? 1.没有传入undefined: <!DOCT ...

  3. freeradius简单配置

    1.安装freeradius sudo apt-get update sudo apt-get install freeradius 2.配置client.conf vim /etc/freeradi ...

  4. java基础阶段几个面试题

    1.说出你对面向对象的理解 在我理解,面向对象是向现实世界模型的自然延伸,这是一种“万物皆对象”的编程思想.在现实生活中的任何物体都可以归为一类事物,而每一个个体都是一类事物的实例.面向对象的编程是以 ...

  5. MySQL原生PHP操作-天龙八步

    <?php //1.第一步[建立连接] $conn = mysqli_connect('localhost','root','123456') or die('数据库连接失败!'); //2.第 ...

  6. 本地yum配置

    yum yum(Yellow dog Updater, Modified)是一个在 Fedora 和 RedHat 以及 CentOS 中的 Shell 前端软件包管理器.基于 RPM 包管理,能够从 ...

  7. ASP.NET Core 1.0: Deploy to IIS

    尽管ASP.NET最新的官方文档记录了如何Deploy to IIS,但是实际操作起来依旧磕磕绊绊.官方文档地址:https://docs.asp.net/en/latest/publishing/i ...

  8. [LC]66题 Plus One (加1)

    ①英文题目 Given a non-empty array of digits representing a non-negative integer, plus one to the integer ...

  9. Elasticsearch系列---常见搜索方式与聚合分析

    概要 本篇主要介绍常见的6种搜索方式.聚合分析语法,基本是上机实战,可以和关系型数据库作对比,如果之前了解关系型数据库,那本篇只需要了解搜索和聚合的语法规则就可以了. 搜索响应报文 以上篇建立的mus ...

  10. 管道 |、|&、tee

    用“|”或“|&”隔开两个命令之间形成一个管道,左边命令的标准输出(|)或者标准错误输出(|&)信息流入到右边命令的标准输入,即左边命令的标准输出作为右边命令的标准输入.如: make ...