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. 学习笔记63_python反射

    ####反射预备知识一########### __call__ 对象后面加括号,触发执行. python中,类的默认的内置方法,有一个名为__call__,如 class foo: def  __in ...

  2. NOIP模拟 16

    嗯我已经是个不折不扣的大辣鸡了 上次的T3就弃了,这次又弃 颓废到天际 T1 巨贪贪心算法 我就是一个只会背板子的大辣鸡 全裸的贪心看不出来,只会打板子 打板子,加特判,然后一无进展,原题不会,这就是 ...

  3. Python文字转换语音,让你的文字会「说话」,抠脚大汉秒变撒娇萌妹

    作者 | pk 哥 来源公众号 | Python知识圈(ID:PythonCircle) APP 也有文字转换为语音的功能,虽然听起来很别扭,但是基本能解决长辈们看不清文字或者眼睛疲劳,通过文字转换为 ...

  4. npm start 的应用 改为forever 后台启动的方法记录

    记录日志的启动方式 forever start -l forever.log -o out.log -e err.log app.js 记录日志的启动方式 forever start -a app.j ...

  5. VMware下Centos7-Minimal上网配置

    1.Centos7下载 http://isoredirect.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1810.iso 2.推荐 ...

  6. 第五天、vim,重定向,用户和组管理

    第五天.vim,重定向,用户和组管理 vim vi:Visual editor,文本编辑器 行编辑器:sed 全屏编辑器:vim,vi,nano 其他编辑器gedit,gvim 定义别名让vi等于vi ...

  7. 今天做一个项目的时候,要在一个编辑的jsp页面的textarea标签设置value属性,结果发现他没有value属性,但是是编辑页面又必须要回显要修改的内容,所以在参考了w3cschool之后很轻松的解决了这个问题。

    今天做一个项目的时候,要在一个编辑的jsp页面的textarea标签设置value属性,结果发现他没有value属性,但是是编辑页面又必须要回显要修改的内容,所以在参考了w3cschool之后很轻松的 ...

  8. sbt安装

    使用 Scala 编写的程序需要使用 sbt 进行编译打包,官网sbt下载解压 在解压路径下创建脚本: #!/bin/bash SBT_OPTS="-Xms512M -Xmx1536M -X ...

  9. Appium+python自动化(四十二)-Appium自动化测试框架综合实践- 寿终正寝完结篇(超详解)

    1.简介 按照上一篇的计划,今天给小伙伴们分享执行测试用例,生成测试报告,以及自动化平台.今天这篇分享讲解完.Appium自动化测试框架就要告一段落了. 2.执行测试用例&报告生成 测试报告, ...

  10. iOS UIKit x Android Widget

    Android的事件回调Listener相当于iOS的delegate回调. Android的事件回调接口Listener相当于iOS的protocol回调协议. Android的UI容器(Adapt ...