Svn服务器的安装和配置

1.安装svn服务器端软件
从镜像服务器或者YUM源下载安装SVN服务器软件:yum install subversion
mkdir /usr/local/svn //创建SVN安装目录
chmod -R 777 svn //修改目录权限为777
svnadmin create /usr/local/svn/sunny //创建一个SVN版本仓库sunny(sunny可以自定义)
cd /usr/local/svn/sunny/conf //进入sunny版本仓库下的配置文件目录

下面要修改这个目录下的三个配置文件

(1)vi svnserve.conf //配置版本库信息和用户文件和用户密码文件的路径、版本库路径,把
# anon-access = read
# auth-access = write
# password-db = passwd
//这四行,前面的#号和空格去掉(注意去掉#要顶格写,不要留有多余空格),变成
anon-access = none //匿名访问,改成none
auth-access = write
password-db = passwd
realm = sunny //改成自己的版本库名称
保存退出

(2)vi authz //文件,创建SVN组和组用户的权限
[groups]
sunny = gep,wce //创建一个sunny的组,并指定两个用户gep和wce

[/] //制定根目录下的权限
@sunny = rw //sunny组用户权限为读写
* = r //其他用户只有读权限
保存退出

(3) vi passwd //创建或修改用户密码
[users]
gep = 123456 //用户名为gep的用户的密码为123456
wce = 123456 //。。。
保存退出

启动SVN服务器:
//这里采用多版本库的方式启动
svnserve -d -r /usr/local/svn/

如果是单版本库可以添加一行
svnserve -d -r /usr/local/svn/sunny

然后要设置自启动
vi /etc/rc.local 打开自启动文件添加
/usr/bin/svnserve -d -r /usr/local/svn/

到此为止可以从服务端检出文件了.

svn命令:
netstat -tnl |grep :3690 查看svn是否启动
安装成功!

ps aux |grep svn 查找所有svn启动的进程
kill -9 2505 杀死2505这个查找到的svn进程

svn checkout svn://172.19.5.2/sunny /data0/htdocs/blog //检出一份版本库文件到指定目录
svn up //更新文件

自动更新
在vi /usr/local/svn/sunny/hooks/post-commit中加入

#!/bin/sh
#设置一些变量
SVN=/usr/bin/svn
WEB=/home/testsvn #要更新的目录
export LANG=en_US.UTF-8
$SVN update $WEB --username xxx --password xxx

其中SVN=右边改成 svn 命令位置 一般默认为/usr/bin/svn
WEB=右边改成你实际的web目录
赋予可执行权限
chmod 777 /usr/local/svn/sunny/hooks/post-commit
安装完毕

出现启动svn显示报错(已启动)情况或者当项目的时候出问题解决:
cd etc
cd sysconfig
vim iptables(仿照句子写一句3690的端口号的句子)
重启防火墙service iptables restart

最后我要着重描述一下svn自动更新的问题:

 1.首先找到 版本库的{ hooks },在hooks下创建 post-commit文件 不需要后缀.
2.vim post-commit  加入如下代码:
#!/bin/sh
export LANG=zh_CN.UTF-8
SVN=/usr/bin/svn     // 你去 cd 一下看看你服务器有没有这个路径 
WEB=/procject/w-project     这个是你项目路径  
$SVN update $WEB --username svn{用户名} --password svn{密码}   //这里面的这个{}是不需要的 相当于注释符号
wq 保存
重启svn  
测试  
 
svn重启命令:
 killall  svnserve
svnserve -d -r /usr/local/svn/   这样是启动svn下所有的版本库的
 
 
如果上述不行  试着把post-commit改成这样的内容
#!/bin/sh
export LANG=en_US.UTF-8
/usr/bin/svn update /phpstudy/www --username gxf --password 123456
看到了吗?只需要改红色部分!
 
注意:我是在www下使用的  svn checkout命令  所以直接指向www就可以了!!!!

svn搭建以及可能遇到的问题解决方案的更多相关文章

  1. Docker+Jenkins+Maven+SVN搭建持续集成环境

    Docker+Jenkins+Maven+SVN搭建持续集成环境 环境拓扑图(实验项目使用PHP环境) 发布流程图 环境说明 系统:Centos 7.4 x64 Docker版本:18.09.0 Ma ...

  2. linux下svn 搭建

    linux 下SVN搭建加自动提交更新到指定目录一.安装#yum install subversion       yum安装SVN#mkdir -p /opt/svn/repos       创建s ...

  3. 转载-Linux下svn搭建配置流程

    Linux下svn搭建配置流程     一.    源文件编译安装.源文件共两个,为: 1.   下载subversion源文件 subversion-1.6.1.tar.gz http://d136 ...

  4. svn搭建

    原文:svn搭建 二.Subversion的安装与测试 Subversion的配置方式有很多种,同时也可以配置不同的操作系统之上,本文我讲解的是Subversion 1.5.4 for Apache2 ...

  5. Hudson+Maven+Svn搭建持续集成环境

    Hudson+Maven+Svn搭建持续集成环境 博客分类: 配置管理 mavenSVNTomcat项目管理配置管理 一.所用开发工具 1.    Hudson: Hudson 是一种革命性的开放源码 ...

  6. Svn———搭建及配置

    一.Svn介绍 subversion(简称svn)是近几年崛起的版本管理软件,是cvs的接班人,目前绝大多数开源软件都使用svn作为代码版本管理软件.Subversion支持linux和windows ...

  7. jenkins和svn搭建自动代码构建发布

    jenkins安装和配置 .安装jenkins .yum install java wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins. ...

  8. 【SVN】Linux下svn搭建配置全过程——初学者轻松上手篇

    版本控制主要用到的是git和svn,其中svn界面化使用操作简单,本篇简单介绍SVN搭建配置全过程. 1. 下载并安装 yum install subversion 查看版本 svnserve --v ...

  9. SVN使用出现的问题及解决方案

    SVN使用出现的问题及解决方案 一.问题描述: 使用TortoiseSVN-1.9.5进行CheckOut时,出现报错信息如下:  Unable to connect to a repository ...

随机推荐

  1. Android仿QQ窗口的抖动的动画效果

    就是仿照QQ窗口的抖动效果,在项目的res下创建anim文件夹,再创建两个xml文件:cycle.xml  . myanim.xml   cycle.xml  :   <?xml version ...

  2. 第十篇 Integration Services:高级事件行为

    本篇文章是Integration Services系列的第十篇,详细内容请参考原文. 简介在前一篇, we introduced fault tolerance by examining method ...

  3. linux系统服务名称

    服务列表(按字母顺序排列) 服务名 必需(是/否) 用途描述 acon 否 语言支持 acpi 否 电源管理 acpid 否 监听精灵进程 adsl 否 内部ADSL开关控制 alsa 否 高级Lin ...

  4. javascript实例学习之六—自定义日历控件

    基于之前上篇博客轻量级jquery,tool.js和base.js.自定义开发的base_datePicker插件,效果类似于jquery_ui的datePicker插件 //基于Base.js以及t ...

  5. 。。。Spring框架总结(一)。。。

    Spring框架已经学习了两遍了,第一遍基本上忘得差不多了,现在开始复习第二遍的,也复习的差不多了,比之前懂了很多东西,今天就写下来,记录一下我滴小成果! 首先,在Spring框架中有两个重要的概念: ...

  6. 夺命雷公狗ThinkPHP项目之----企业网站29之网站前台左侧导航的高亮显示

    其实这里就是加多一段jq代码即可: 首先加一个id : 然后在下面加多一段jq代码即可: <script type="text/javascript"> $(docum ...

  7. 给uefi引导的方式安装archlinux

    基本就是照着官方的wiki来的,不过官方的wiki的内容太杂了,或许我们需要的是一个瀑布似的流程. 其实大体上与mbr引导的方式类似,只凭借回忆说一下有区别的地方,等下一次有机会的时候再验证一下. 换 ...

  8. 安装交叉编译器arm-linux-gcc

    需要交叉编译环境故安装交叉编译环境    1.在宿主机的/usr/local/arm目录存放交叉编译器        mkdir /usr/local/arm    2.解压交叉编译器包至/usr/l ...

  9. js调用后台方法(如果你能容忍执行的后台方法变成一个常量)

    最近一直在做一个电话拨号的系统,系统不大,但是做的时间有点长了.其中用到了一个技术:js调用后台方法.解决这个问题花了不少时间,现如今仍然还有些不明白的地方,今天跟大家分享一下.真正明白的同学欢迎指正 ...

  10. Ajax错误 “SCRIPT7002: XMLHttpRequest: 网络错误 0x2ef3, 由于出现错误 00002ef3 而导致此项操作无法完成” 的归纳总结

    最近在做Asp.net项目的时候,用Ajax访问服务器数据有时候老是莫名其妙的报错:SCRIPT7002: XMLHttpRequest: 网络错误 0x2ef3, 由于出现错误 00002ef3 而 ...