Linux centos7系统下svn的安装与配置
一、安装svn
# yum -y install svn
二、查看svn版本信息
# svnserve --version
三、搭建svn版本库(假设项目名称为project)
1、首先创建版本库目录
# mkdir -p /var/svn/project
2、创建版本库
# svnadmin create /var/svn/project //版本库路径跟上一步保持一致
前两步执行完成后 在 /var/svn/project/ 路径下就会创建一些版本配置、日志等文件夹和文件,目录如下

后面主要修改的有 conf/ 和 hooks/ 两个
conf/

hooks/

3、设置svn账号和密码
# vi /var/svn/project/conf/passwd //这里的文件路径可以用相对路径,也可以用绝对路径。例如:当前位置在 /var/svn/project/conf/中,则 #vi passwd 即可打开passwd文件了
打开文件后,英文状态下按(i)键进入编辑模式,录入账号名和密码。格式 username = password。
编辑完成后,先点击(Esc)键,然后同时按下(Shift+;),左下角出现(:),这时输入wq点击回车保存修改并退出。(lll¬ω¬)!!! 居然在描述文本文件编辑命令,后面再遇见就不这么详细了喵″

4、设置svn账号的读写权限
# vi /var/svn/project/conf/authz
[group]为账号分组情况。格式groupname = username_1,username_2,,,
[project:/]
@manager = rw //赋予manager组成员整个项目的读写权限
[project:/php]
@php = rw //赋予php组成员项目库php分支的读写权限
[project:/iOS]
iOS_3 = rw //赋予账号iOS_3项目库iOS分支的读写权限
[project:/]
* = r //赋予所有成员整个项目读取权限
保存退出

5、修改项目svn相关配置文件
# vi /var/svn/project/conf/svnserve.conf
找到图中白色四行,去掉前面(#)即可,保存退出。

6、启动svn版本库
# svnserve -d -r /var/svn/
这里的注意一下,启动svn版本库时路径最好写至svn/,因为后面可以再在该路径下创建其他项目版本库,这样就不必每个项目都启动一个svn进程了。
7、查看svn进程
# ps aux | grep svn

8、端口设置
# firewall-cmd --zone=public --add-port=3690/tcp --permanent //开启svn端口,如果使用的是阿里云的服务器话,可能就要登陆阿里云控制台配置安全规则,具体配置方法阿里云那边有详细说明。
# systemctl restart firewalld.service //重启防火墙
9、到这里版本库搭建就完成了。可以到本地使用svn工具检出看看

四、SVN实现自动更新WEB目录
前面有描述,svn项目下面有一个hooks/目录,里面存放的是全部的钩子脚本的模板。
进入svn项目下的hooks/文件
# cd /var/svn/project/
新建编辑客户端提交后触发的钩子文件
# vi post-commit
编辑内容如下
#!/bin/sh
REPOS="$1"
REV="$2" export LANG='zh_CN.UTF-8' SVN_PATH=/usr/bin/svn
WEB_PATH=/var/www/project
SVN_USER=gaoyi
SVN_PW=gaoyi950815
LOG_PATH=/var/svn/project/log/svn.log echo `datetime: "+%Y-%m-%d %H:%M:%S"` >>$LOG_PATH $SVN_PATH update $WEB_PATH --username $SVN_USER --password $SVN_PW --no-auth-cache >>$LOG_PATH
保存退出后修改其文件权限
# chmod 777 post-commit
这里的钩子文件就编辑完成了。
接着就到服务器web目录,也就是上面钩子中的WEB_PATH下checkout项目了。操作如下
# svn checkout svn://192.168.6.74/project/ /var/www/project/
其中第三部分为svn版本库地址,第四部分为web目录也就是项目地址
第一次checkout时会要求输入用户名和密码以通过验证。
checkout成功之后,后面提交的更新就会自动同步到web目录下来了。
初次编写博客,写得有什么不对或不明了的地方还请各位指正提示!
谢啦!!☆⌒(*^-゜)v。
Linux centos7系统下svn的安装与配置的更多相关文章
- [转]Linux(centOS6.5)下SVN的安装、配置及开机启动
1.检查是否已安装 rpm -qa subversion 如果要卸载旧版本: yum remove subversion 2.安装 yum install subversion PS:yum inst ...
- Linux(centOS6.5)下SVN的安装、配置及开机启动
http://www.blogjava.net/rockblue1988/archive/2014/11/19/420246.aspx
- linux下svn的安装与配置
---恢复内容开始--- linux下svn的安装与配置 Linux发行版本:CentOS6.5 1.安装subversion sudo yum -y install subversion 2.创建s ...
- nginx在Centos7.5下源码安装和配置
安装nginx 安装nginx依赖包 yum install -y pcre-devel zlib-devel openssl-devel wget gcc tree vim 进入目录/root/se ...
- windows系统下GCC的安装与配置
刚开始看 C++ Primer,看到编译器的部分,自己搜了搜怎么搭建GCC,搜到以下内容,复制过来留个印象: windows系统下GCC的安装方法,以及一些环境变量的配置,如果对GCC不是很清楚,关于 ...
- CentOS7系统下GitLab的安装、汉化、修改默认端口、开启发送邮箱
一.centos7.4 下安装及汉化 =============================================== 2017/11/12_第6次修改 ...
- Linux 下 SVN 的安装和配置
SVN 是一个自由开源的版本管理系统,它可以按照时间的顺序去管理文件.目录以及对其进行的修改.于今,它被广泛的用于互联网公司的项目版本管理中 工作原理 它的工作原理如下图所示 它是由一个SVN服务器和 ...
- 第一讲 Windows10系统下IDE-CLion的安装与配置
01 为什么使用CLion?02 CLion安装方法03 CLion的基本使用04 课程形式及答疑说明 toc 参考链接: Window10上CLion极简配置教程 学生免费注册Pycharm专业版 ...
- Mac OS X系统下利用VirtualBox安装和配置Windows XP虚拟机
准备工作 下载并安装VirtualBox for Mac到https://www.virtualbox.org/wiki/Downloads下载VirtualBox <版本> for OS ...
随机推荐
- C#设计模式之二十一职责链模式(Chain of Responsibility Pattern)【行为型】
一.引言 今天我们开始讲"行为型"设计模式的第八个模式,该模式是[职责链模式],英文名称是:Chain of Responsibility Pattern.让我们看看现实生活中 ...
- 注册Azure AD 2.0 应用程序
作者:陈希章 发表于 2017年3月22日 上一篇 介绍了Microsoft Graph应用程序的一些概念,以及目前还比较普遍的Azure AD 1.0应用程序的注册方式.但正如我多次提到的那样,虽然 ...
- HTTPS加密流程超详解(一)前期准备
0.前言 前一阵子想写一个HTTPS的嗅探工具,之前只是大致了解SSL/TLS协议的加密流程,真正上起手来一步一步分析发现还是有点复杂的,于是我参考了wireshark的源码以及各种RFC,弄清楚了S ...
- Axure学习笔记(一)
Axture是一种快速制作原型的工具,在产品经理和体验设计师之中非常流行,不过现在产品经理比较难找,所以我只好上阵研究了一下. 经过几天的研究,看了小楼老师的一些视频,看了一些文档,做了 ...
- iOS UICollectionView(转一) XIB+纯代码创建:cell,头脚视图 cell间距
之前用CollectionViewController只是皮毛,一些iOS从入门到精通的书上也是泛泛而谈.这几天好好的搞了搞苹果的开发文档上CollectionViewController的内容,亲身 ...
- Kotlin——最详细的常量、变量、注释的使用
在Kotlin中的变量.常量以及注释多多少少和Java语言是有着不同之处的.不管是变量.常量的定义方式,还是注释的使用.下面详细的介绍Kotlin中的变量.常量.注释的使用.以及和Java的对比. 如 ...
- ASP.NET MVC下自定义错误页和展示错误页的几种方式
在网站运行中,错误是不可避免的,错误页的产生也是不可缺少的. 这几天看了博友的很多文章,自己想总结下我从中学到的和实际中配置的. 首先,需要知道产生错误页的来源,一种是我们的.NET平台抛出的,一种是 ...
- springboot学习(一)——helloworld
以下内容,如有问题,烦请指出,谢谢 springboot出来也很久了,以前零散地学习了不少,不过很长时间了都没有在实际中使用过了,忘了不少,因此要最近准备抽时间系统的学习积累下springboot,给 ...
- [置顶]
webapi token、参数签名是如何生成的
一个问题 在这里我想问大家一句,如果你向一个刚刚接触.net web后端程序开发的同学(别人刚刚也就学了webform的request,response,会提交表单的这种刚接触不久的同学),你怎么去解 ...
- HDU4992 求所有原根
Primitive Roots Time Limit: 4000/2000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)T ...