linux centos 6.8svn,centos6.5下svn的使用说明

linux下搭建svn服务器的文章已经有很多了,这里仅记下自己最近使用的一些实践之谈,原理先不深究,供日后查阅用。

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

创建版本库:

mkdir /path/to/repo

svnadmin create /path/to/repo

创建好后目录下会有conf db format hooks locks README.txt这些个文件(夹),

其中conf是配置文件信息关系到登录账号的问题,hooks是钩子文件会在服务器端执行一些客户端对应动作的响应事件

配置用户/开发组信息

修改conf/passwd,直接在后面追加 username = passwd的字符串明文,这里的username是linux中存在的用户名,

d993cee54b079735437e16123a83ba7d.png

修改conf/svnserve.conf,注释掉那几行使之生效,

anon-access,auth-access,passwd-db,realm,

同时修改anon-access = none,

这样在客户端才可以有读日志文件的权限,方便查看不同版本的提交日志信息,

修改realm = /path/to/repo指定svn版本库目录。

97316b023022e31b174d4f451325e2d6.png

到这里个人开发的一个简单配置就完成了,这时候用svnserve -d -r /path/to/repo

就可以启动svn进程然后就可以使用客户端来连接svn://ip:port/repo使用了,这里默认的端口是3690,

如果是想开多个svn版本库到别的目录,只需要重复以上步骤至启动时指定不同的端口号即可,

比如使用3691端口启动一个新的svn版本库:svnserve -d --listen-port 3691 -r /path/to/repo

这样在客户端连接的时候url是svn://ip:3691/repo

开发组配置

多user在同一个group开发代码,每个user去生成一个svn的版本库然后指向同一个代码目录这个是很繁琐而不符合规范的,

这个时候就用上了svn的成员组配置:

7ed3a86cacb60503f3a8651d287a292f.png

修改conf/authz文件,编辑:

# 添加 开发用户组groupName1

[groups]

groupName1= userName1[,userName2,userName3...]

# 添加开发组对代码目录的读写权限

[/path/to/repo]

@groupName1 = rw

这里的userName1,userName2的用户需是linux里的存在的用户,且对应的svn密码已经在conf/passwd中指定。

到这里就配置好一个组成员的配置了,经测试是ok的.

post-commit钩子配置

粗略的可以理解svn客户端将修改信息以一定格式传输到服务端保存在固定格式的文件里面,

svn up的时候再将这些文件里的信息生效到代码目录里。

我们有时候需要在服务端实时的看到代码更新信息,这就用到了post-commit钩子:

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

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

到svn版本库配置信息目录,

cd hooks,

cp post-commit.tmpl post-commit

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

export LANG=en_US.UTF-8

/usr/bin/svn update --force /path/to/repo

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

以上就是svn在centos下的简单使用实践,应对日常的开发需求已经足够。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值