svn+apache搭建版本控制服务器
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搭建版本控制服务器的更多相关文章
- CentOS 7 使用SVN+Apache搭建版本控制服务器
svn简介 Subversion是一个免费/开源的版本控制系统, Subversion 可以跨越时间地对文件和目录, 以及它们的修改进行管理. 这就允许你恢复 数据的旧版本, 或检查数据的修改历史. ...
- 实战:使用SVN+apache搭建一个版本控制服务器
今天讲的内容: 实战:使用SVN+apache搭建一个版本控制服务器 每天: 10:00 晚上:21:00 服务端:xuegod63.cn IP:192.168.10.63 服务概述: SVN(s ...
- 在Linux上用Apache搭建Git服务器
在Linux上用Apache搭建Git服务器 最近在学Linux,终于在Linux上用Apache搭建起了Git服务器,在此记录一下. 服务器:阿里云服务器 Linux版本:CentOS 6.5 ...
- 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 ...
- Virtual Box + CentOS Minimal + Apache搭建Web服务器
本文并不介绍关于Virtual Box, CentOS, Apache的安装, 主要针对安装后相关的配置, 使宿主机(Host)可以访问客户机(Guest: CentOS in Virtual Box ...
- Centos7 搭建Svn+Apache服务器
Svn客户端搭建 1.yum install subversion 2.查看安装版本 svnserve --version 3.创建SVN版本库目录 mkdir -p /opt/svn 4.创建版本库 ...
- 个人环境搭建——版本控制SVN
版本控制SVN SVN服务器配置: 第一部分:svn服务器搭建(主要是四步走) 参考:http://www.son1c.cn/show/920.html 一,安装Subversion sudo apt ...
- [源码管理] ubuntu中svn简明用法:服务器搭建+客户端使用
本文是对网络上前人的优秀文章加以实践验证后所整理(修正或补充) 第一部分:svn服务器搭建(主要是四步走) 参考:http://www.son1c.cn/show/920.html 一,安装Subve ...
- 用 Apache James 搭建邮件服务器来收发邮件实践(一)(转)
Apache James 简称 James, 是 Java Apache Mail Enterprise Server的缩写.James 是100%基于Java的电子邮件服务器.它是一种独立的邮件服务 ...
随机推荐
- 【ARC064-F】【XSY2575】Rotated Palindromes(DP)(字符串)
Description 然而,由于小C沉迷于制作游戏,他完全忘记了自己作为国家集训队的一员,还有156道作业题等他完成.还有一天作业就要截止了,而他一题还没有做.于是他赶紧挑了一道看起来最简单的题: ...
- MVC5用户控件
1. 添加一个model,用于给用户控件传递数据: 2.添加一个部分视图 . 3. 部分视图中,引入model,用于传递数据 4. 在要插入用户控件的地方,这样写 @Html.Partial(&quo ...
- php sublime常用插件
php sublime常用插件 1 Sublime Text的默认设置是不开启显示编码的,如果想开启,可通过菜单Perference → Settings – User,在打开的配置文件里 ,在大括号 ...
- vue之注册自定义的全局js方法
前端开发的时候,总会需要写一些js方法,在vue框架中为了方便使用,可以考虑注册一个全局的js方法,下面是注册步骤: 1.0 可以在assets文件中的js文件下面新建一个js文件,如:yun.js- ...
- 小程序的基本概念-生命周期(组件 wxml)
一.组件生命周期:一个组件从创建开始到使用中最后被销毁的过程 ---onLoad事件:组件(创建成功并且加载完成)触发一次 (1)当此事件触发发送请求获取数据 (2)获取其他组件传递数据(option ...
- C++总结(1)keywords to the class
目录 Chapter 1.关于类的关键字 1. class,struct与union 2.private,public与protected 3.friend 4.virtual 5.const 6.i ...
- 微服务SpringCloud之GateWay熔断、限流、重试
纯洁的微笑的Spring Cloud系列博客终于学完了,也对Spring Cloud有了初步的了解. 修改请求路径的过滤器 StripPrefix Filter 是一个请求路径截取的功能,我们可以利用 ...
- mysql去重查询表中数据
1.distinct select count(distinct CName) from teble select count(CName) from (select distinct CName f ...
- window,sts安装python
1.先在python官网下载最新的python安装,安装的时候勾上所有选项 官网:https://www.python.org/downloads/ 2.在sts里安装pyDev插件,我当时直接sea ...
- hdu 1263 水果 (嵌套 map)
水果Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submissio ...