centos6.5中的svn部署过程

centod6.5下的svn部署过程

安装:

yum -y install subversion  ,可用rpm -ql subversion查看svn的安装目录,默认在/usr/bin下

创建版本库:

进入conf修改配置文件:

vim passwd 进去后将以下信息添加在末尾
[users]
# harry = harryssecret
# sally = sallyssecret
用户名 = 密码      #用户名和密码,这里可以添加多个用户名和密码

vim authz  添加在末尾
...
[groups]
# harry_and_sally = harry,sally
# harry_sally_and_joe = harry,sally,&joe
users = 用户1,用户2                #用户组 = 用户 (这里用户可以有多个)
[/]
@users = rw

vim svnserve.conf 关闭注释以及修改变量
...
anon-access = none #匿名用户不可操作
auth-access = write #授权用户可写
password-db = /data/tools/svn/repos1/conf/passwd #使用哪个文件作为账号文件
authz-db = /data/tools/svn/repos1/conf/authz #使用哪个文件作为权限文件
realm = /data/tools/svn/repos1 # 认证空间名,版本库所在目录,和之前的一样

开启和关闭服务

1.编辑服务进程文件
vim /etc/init.d/svnserve 在最前面增加一行
OPTIONS=" -r /data/tools/svn"
2.启动svnserve服务
svnserve -d -r /data/tools/repos1   #开启     或者使用service svnserve restart
killall svnserve     #关闭
ps aux |greo svnserve  #查看是否在运行
3.设置svn开机自启动
chkconfig svnserve on

打开端口

这一步很重要,如果你都配置完了却发现连接不上,那一定是端口没有打开,默认端口是3690.

 iptables -I INPUT -i eth0 -p tcp --dport 3690 -j ACCEPT  #开放端口
  service iptables save #保存 iptables 规则(如不能保存请使用其他方法保存

测试

1.svn co svn://127.0.0.1/repos1 svntest --username toomee --password toomee1234
 -----------------------------------------------------------------------
ATTENTION!  Your password for authentication realm:
   <svn://127.0.0.1:3690> My First Repository
can only be stored to disk unencrypted!  You are advised to configure
your system so that Subversion can store passwords encrypted, if
possible.  See the documentation for details.
You can avoid future appearances of this warning by setting the value
of the ‘store-plaintext-passwords‘ option to either ‘yes‘ or ‘no‘ in
‘/root/.subversion/servers‘.
-----------------------------------------------------------------------
Store password unencrypted (yes/no)? yes
A    svntest/Desktop.ini
Checked out revision 1. 

2.touch svntest/test
3.svn update svntest/
4.svn add svntest/test
A         svntest/test
5.svn ci -m "test" svntest/test
Adding         svntest/test
Transmitting file data .
Committed revision 2. 

客户端连接

Windows

使用TortoiseSVN,url填写svn://你的服务器ip,账号密码填刚刚设置的。

Mac

使用CornerStone,url填写svn://你的服务器ip,账号密码填刚刚设置的。

自动部署

粗略的可以理解svn客户端将修改信息以一定格式传输到服务端保存在固定格式的文件里面,svn up的时候再将这些文件里的信息生效到代码目录里。我们有时候需要在服务端实时的看到代码更新信息,这就用到了post-commit钩子:

在客户端commit的时候触发服务端到/data/tools/svn/repos1执行svn up来更新文件,

同时减少日志文件的大小,防止服务端当机后的日志损失。

cd /data/tools/svn/repos1/hooks  #你的版本仓库目录
cp post-commit.tmpl post-commit

编辑post-commit:注释掉最后一行,添加

vim post-commit

export LANG=en_US.UTF-8
/usr/bin/svn update --force /data/tools/svn/repos1

另外,post-commit脚本必须有x权限。

chmod +x post-commit

到这里hook钩子就配置好了,重启svn进程,即可看到客户端commit后文件同步更新。

原文地址:http://blog.51cto.com/13922718/2161853

时间: 2024-08-09 12:51:47

centos6.5中的svn部署过程的相关文章

centos6下redis cluster集群部署过程

一般来说,redis主从和mysql主从目的差不多,但redis主从配置很简单,主要在从节点配置文件指定主节点ip和端口,比如:slaveof 192.168.10.10 6379,然后启动主从,主从就搭建好了.redis主从中如果主节点发生故障,不会自动切换,需要借助redis的Sentinel(哨兵模式)或者keepalive来实现主的故障转移. 今天介绍下redis cluster集群模式:redis集群是一个无中心的分布式redis存储架构,可以在多个节点之间进行数据共享,解决了redi

CentOS6.5中部署java web环境

原来在linux中部署java web环境,没有做好总结,这次在部署的过程中,将部署的过程做了记录,希望对大家有帮助.主要内容包括CentOS安装以后的网络设置,系统自带jdk的卸载,新版本jdk的安装,tomcat的安装部署. 一 CentOS的网络设置 利用桥接模式,让CentOS连接到网络. Vi /etc/sysconfig/network-scripts/ifcfg-eth0 修改onboot=yes 保存退出 Ifconfig命令查看网络情况 可以看到ip地址 这时就能够ping通外

centos6.5中部署Zeppelin并配置账号密码验证

centos6.5中部署Zeppelin并配置账号密码验证1.安装JavaZeppelin支持的操作系统如下图所示.在安装Zeppelin之前,你需要在部署的服务器上安装Oracle JDK 1.7或以上版本, 并配置好相应的JAVA_HOME环境变量.以CentOS为例,具体操作过程如下: a)下载并安装jdk-8u111-linux-x64.rpm # rpm -ivh jdk-8u111-linux-x64.rpm b)配置环境变量.在/etc/profile文件结尾添加: export

SVN 使用过程中的报错

SVN 使用过程中的报错 1.Error while creating module:org.apache.subversion.javahl.ClientException:Authorization failed svn:认证失败 出现情景:启动 svn 服务后,首次提交项目时 解决方案:修改仓储目录下的配置文件 svnserve.conf.passwd.authz 第一种:打开匿名访问.修改 svnserve.conf 文件,将 anon-access 的值改为 write 第二种:设置授

Maven部署过程中的ClassCastException问题

引言: Maven功能强大,但是又有些复杂,难以捉摸和使用.在本人开发中碰到了一个ClassCastException的问题,通过这个问题的解决,加深了对于maven依赖管理中scope的理解. 1. 问题的引入 部署环境tomcat 7, 开发中使用的框架spring,spring data,hibernate之类的,基于Maven部署过程中,会出现以下异常信息: SEVERE: Exception starting filter Spring OpenEntityManagerInViewF

Rancher 2.0部署过程中常见问题分析与解决

本文是Rancher 2.0部署与使用过程中常见的问题及其解决方法,多数问题整理收集自Rancher官方技术交流群内用户的提问与反馈.欢迎扫描文末二维码,添加Rancher小助手为好友,加群获得更多技术支持. 本文主要内容为: 1.部署Rancher 2.0的环境需求 推荐使用的操作系统 推荐的硬件配置 支持的docker版本 防火墙需要允许通过的端口 2.部署过程中的常见问题及排查思路 环境信息残留 openssh版本过低问题 nodeport端口只有一台机器能访问 部署使用calico网络部

淘宝分布式 key/value 存储引擎Tair安装部署过程及Javaclient測试一例

文件夹 1. 简单介绍 2. 安装步骤及问题小记 3. 部署配置 4. Javaclient測试 5. 參考资料 声明 1. 以下的安装部署基于Linux系统环境:centos 6(64位),其他Linux版本号可能有所差异. 2. 网上有人说tair安装失败可能是由于gcc版本号问题,高版本号的gcc可能不支持某些特性导致安装失败.经过实验证明.该说法是错误的,tair安装失败有各种可能的原因但绝对与gcc版本号无关,比方我的gcc開始版本号为4.4.7,后来tair安装失败,我又一次编译低版

CentOS6.4系统下FastDFS部署

    (一)   概述 FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题.特别适合以文件为载体的在线服务,如相册网站.视频网站等等. FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage).跟踪器主要做调度工作,在访问上起负载均衡的作用. FastDFS系统结构如下图所示: 上传文件交互过程: 1. client询问tracker上传到的storage,不需

淘宝分布式 key/value 存储引擎Tair安装部署过程及Java客户端测试一例

目录 1. 简介 2. 安装步骤及问题小记 3. 部署配置 4. Java客户端测试 5. 参考资料 声明 1. 下面的安装部署基于Linux系统环境:centos 6(64位),其它Linux版本可能有所差异. 2. 网上有人说tair安装失败可能是因为gcc版本问题,高版本的gcc可能不支持某些特性导致安装失败,经过实验证明,该说法是错误的,tair安装失败有各种可能的原因但绝对与gcc版本无关,比如我的gcc开始版本为4.4.7,后来tair安装失败,我重新编译低版本的gcc(gcc4.1