cenos 7下安装SVN以及同步代码到WEB目录

该文章主要介绍给cenos 7下安装SVN以及同步代码到WEB目录。

cenos 7下安装SVN以及同步代码到WEB目录

一、安装svn

  1. 运行以下命令安装SVN。
yum install subversion

2.运行以下命令查看SVN版本。

svnserve --version


3. 创建版本库

a、 运行以下命令创建目录。

mkdir /var/svn

b、 依次运行以下命令创建版本库。

cd /var/svn
svnadmin create /var/svn/blog

c、 依次运行以下命令查看自动生成的版本库文件。

cd svnrepos
ls

Subversion目录说明:

db目录:所有版本控制的数据存放文件。

hooks目录:放置hook脚本文件的目录。

locks目录:用来追踪存取文件库的客户端。

format文件:是一个文本文件,里面只放了一个整数,表示当前文件库配置的版本号。

conf目录:是这个仓库的配置文件(仓库的用户访问账号、权限等)。

d、 运行命令cd conf/进入conf目录(该SVN版本库配置文件)。
返回结果如下:

authz:是权限控制文件。

passwd:是账号密码文件。

svnserve.conf:SVN服务配置文件。

e、 按以下步骤设置账号密码:

(1) 运行 vi passwd

(2) 按 i 键进入编辑模式。

(3) 在 [users] 块中添加用户账号和密码,格式:账号=密码,比如示例中的test= test123(注意等号两端要有一个空格)。

(4) 按 Esc 键退出编辑模式,并输入 :wq 保存并退出。


f、按以下步骤设置权限:

(1)运行 vi authz

(2)按 i 键进入编辑模式。

(3)在末尾添加如下代码(其中,r表示读,w表示写):

[/]
test=rw

(4) 按 Esc 键退出编辑模式,并输入 :wq 保存并退出。


g、 按以下步骤修改svnserve.conf文件。

(1) 运行命令 vi svnserve.conf

(2) 按 i 键进入编辑模式。

(3) 打开以下几个注释(注意每行不能以空格开始,等号两端要有一个空格):

anon-access = read #匿名用户可读,您也可以设置 anon-access = none,不允许匿名用户访问。设置为 none,可以使日志日期正常显示

auth-access = write #授权用户可写

password-db = passwd #使用哪个文件作为账号文件

authz-db = authz #使用哪个文件作为权限文件

realm = /var/svn/blog#认证空间名,版本库所在目录

(4)按 Esc 键退出编辑模式,并输入 :wq 保存并退出。


h、运行以下命令启动SVN版本库。

svnserve -d -r /var/svn/blog

g、 运行命令ps -ef |grep svn 查看SVN服务是否开启。

如果返回结果如下图所示,表示SVN服务已经开启。


运行以下命令停止SVN命令。

killall svnserve

二、在windows上测试

1、 在本地机器上安装 TortoiseSVN客户端。

2、 在您的本地项目文件夹,右键空白处弹出菜单,选择 SVN检出。


3、 指定资源库URL,格式为 svn://实例公网IP地址/资源库名;指定检出至目录(如本示例中的D:/WWW/test);再单击 确定


如果出现以图所示信息,表示检出成功。


第一次检出需要登录账户和密码,以passwd文件里面的账户密码为主。

三、同步代码到WEB目录

1、 运行一下命令进去hooks目录

cd hooks
ls

2、 运行以下命令复制post-commit.tmpl

cp post-commit.tmpl post-commit 

3、 添加权限

chmod 755 post-commit

4、 执行vi post-commit进行编辑,文本最后添加如下代码:

export LANG=en_US.UTF-8  #(注:这里语言不能写成en_us.utf-8,因为Linux中没有这个>小写的语言)
echo "Code Deployed at `date "+%Y-%m-%d %H:%M"`" >> /var/svn/yong/hooks/deploy_log
#SVN=/var/svn/yong
#WEB=/var/www/html      #要更新的目录
#$SVN update --username yong --password funcpasswd123 $WEB
cd /var/www/html
svn co file:///var/svn/yong/
svn cleanup
svn up /var/www/html/  --username test--password test123 --no-auth-cache

完成以上步骤,即可同步代码到web目录

上一篇:关闭apache自动目录列表功能的三种方法 下一篇:Cenos7.2下安装Apache2.4,MySQL5.7和PHP7.1

评论

评论(0)

暂无评论