ubuntu16 svn上传代码并自动更新到网站目录

一、检查svn是否安装

使用命令:

svn

如果显示:

Type 'svn help' for usage.

则卸载svn:

sudo apt-get remove --purge subversion

二、安装svn

先更新:

sudo apt-get update

再安装:

sudo apt-get install subversion

三、创建svn版本库

创建总库svn:

sudo mkdir  /home/svn

创建单个库repository:

sudo mkdir  /home/svn/repository

更改repository权限:

sudo chmod -R 777 /home/svn/repository

 创建版本库:

sudo svnadmin create /home/svn/repository

 然后,进入repository目录会看到以下几个文件:

conf  db  format  hooks  locks  README.txt

四、配置文件

在repository目录,对db更改权限:

sudo chmod -R 777 db

进入conf文件夹,有以下几个文件:

authz  hooks-env.tmpl  passwd  svnserve.conf

1、修改配置文件svnserve.conf

vim svnserve.conf

取消以下四个的注释:(要顶格)

anon-access = read          #匿名用户可读

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

password-db = passwd     #密码文件为passwd

authz-db = authz               #权限文件为authz

2、修改配置文件authz

vim authz

在最末尾添加:

[/]

“你的用户” = rw

3、修改配置文件passwd

vim passwd

在 [users] 下面添加:

"你的用户" = “你的密码”

五、启动服务

svnserve -d -r /home/svn

 查看是否启动成功:

ps aux | grep svnserve

 如果有这一条,则是启动成功

root     14570  0.0  0.1  73488  2840 ?        Ss   01:23   0:00 svnserve -d -r /home/svn

 若想停止服务:

killall svnserve

六、本地拉取服务器svn代码及上传代码

1、拉取:先确保本地安装TortoiseSVN,在你想要的文件夹右键——SVN Checkout——填入svn://你的服务器IP/repository——确定——输入你的用户和你的密码——OK!

2、上传:在当前文件夹修改文件后——右键——SVN Commit——ALL(全选)——OK

七、服务器更新代码

svn co file:///home/svn/repository/ /var/www/html

其中 /var/www/html 你的网站目录。

这样你就能在 /var/www/html 看到你上传的代码啦~

八、自动更新钩子

每次提交代码后,我们希望服务器能自动更新,因此进入到 /home/svn/repository/hooks 目录,可以看到已经有了一个post-commit文件,但我们要新建一个post-commit

vim post-commit

 输入如下代码,WEB代表你的网站目录,username和password是你的账户和密码

#!/bin/sh
WEB=/var/www/test
export LANG=en_US.UTF-8
sudo svn update $WEB --username zhangsan --password 123456 

最后给文件授权

chmod +x post-commit

这样,每次本地提交,服务器也能更新啦~

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值