svn搭建过程 针对Linux

Posted 姑凉汇

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了svn搭建过程 针对Linux相关的知识,希望对你有一定的参考价值。

一,yum安装SVN

yum install -y subversion


二,验证是否完成 svnserve --version


三,创建svn版本库,用于放置所有项目的版本,路径可随意选择、建议与项目同级.

cd /data/wwwroot/

mkdir svnweb


在宝塔下 cd /www/wwwroot/

mkdir svnweb


四,创建项目库例如XXX01 (每个版本 对应每个项目,方便后期管理)


cd svnweb 回车

mkdir xxx01 


五,初始化项目版本库 svnadmin create /www/wwwroot/svnweb/xxx01


cd xxx01

ls

会看到以下目录 conf db format hooks locks README.txt


cd conf

ls


看到 authz password svnserve.conf

说明:

(1)svnserve.conf svn服务综合配置文件

(2)password 用户名口令文件

(3)authz 权限配置文件


5.1 修改password文件

vi password


在最后一行添加你的用户名和密码 格式为 admin=admin123


5.2修改authz文件

vi authz


[groups]

# harry_and_sally = harry,sally

# harry_sally_and_joe = harry,sally,&joe

<--新增开始-->

[/]

admin = admin123 //用户名和密码

@admin = rw

* = r

<--新增结束-->


5.3 修改配置文件svnserve.conf

vi svnserve.conf


打开注释 去掉# 前面不留空格 anon-access=none (后面的参数不是none请改成none)

打开注释 去掉# 前面不留空格 anon-access=write (登录的用户可以写入)

打开注释 去掉# 前面不留空格 password-db=passwd (使用密码)


六,修改钩子文件让其同步到项目下

cd /www/wwwroot/svnweb/xxx01/hooks/

touch post-commit

vi post-commit


钩子文件第一行顶端必须是

#!/bin/sh 开头


在文件里添加以下内容


#!/bin/sh


REPOS="$1"

REV="$2"

TXN_NAME="$3"


"$REPOS"/hooks/mailer.py commit "$REPOS" $REV "$REPOS"/mailer.conf


#需执行此命令

#/usr/bin/svn checkout file:///data/wwwroot/svnweb/xxx01/ /data/wwwroot/项目文件


export LANG=en_US.UTF-8

REPOS="$1"

REV="$2"

用户名 密码

/usr/bin/svn update --username admin --password admin123 /data/wwwroot/项目文件

chown -R www.www /data/wwwroot/项目文件

chmod -R 777 /data/wwwroot/项目文件

exit 0


七 修改权限

chown -R www.www /www/wwwroot/svnweb

chmod -R 750 /www/wwwroot/svnweb


八 停止和启动svn

停止 killall svnserve

重启(svn 没停止重启会失败) svnserve -d -r /www/wwwroot/svnweb/


九 检出版本,/usr/bin/svn checkout file:///data/wwwroot/svnweb/xxx01/ /data/wwwroot/项目文件(已经在钩子文件中注释了,复制出来直接跑)


10 客户端建立是否能通讯 svn://ip/xxx01 (xxx01是版本库名称)


另外补充,阿里云主机要在安全配置中开启3690端口,其他地方开始无效,其他服务器运营商,要打开svn服务器防火墙端口,同样为3690


以上是关于svn搭建过程 针对Linux的主要内容,如果未能解决你的问题,请参考以下文章

Linux系统下的SVN Server搭建过程

linux搭建svn支持svn协议和http协议

转linux(Ubuntu)配置svn仓库,搭建svn服务器

linux 搭建SVN服务端

Linux下svn环境搭建

linux虚拟机IP配置及SVN服务环境搭建