美文网首页Mac SVN服务器搭建SVNSVN系列教程
如何利用SVN钩子自动更新网站

如何利用SVN钩子自动更新网站

作者: 呱星人 | 来源:发表于2018-02-12 17:44 被阅读193次

钩子是什么?其实和回调是一个概念,当某个事情发生时就会调用你提供的方法

利用好SVN钩子可以大大的方便你的开发

比如web开发人员,每次提交了代码都需要手动到服务器更新下代码才能看到效果。

今天我就教大家如何利用钩子自动化更新。

SVNBucket,钩子配置页面

如果你还没有SVNBucket帐号,点击注册

如上图,点击添加钩子,我们需要填入链接、token、触发条件

链接:就好像我们的回调方法,在你提交代码后就会自动调用这个链接,你收到调用后就可以执行代码更新了。

token:是一个可选的参数,在调用链接时会带上这个参数,可以用来检查调用是否来自SVNBucket。这里可以随意填写一个自己想要的参数就行了

触发条件:触发条件我们选择提交后,这样代码提交之后就会调用链接。

那么我们的链接填写什么呢?你需要自己写一个http服务,用来接收调用。

下面我以Python代码为例(PHP版本看文章最后),写一个简单的http服务来接收调用:

自动更新处理服务

这里我们用python的bottle框架搭建了一个简单的http服务来处理代码更新。根据这个可以自己实现一个其他语言的版本

POST请求会带上的参数有:

event:事件名字,有start-commit(提交前), post-commit(提交后)

token:校验字符串

rev:版本号( post-commit 事件才有值)

log:提交描述内容( post-commit 事件才有值)

user:提交者用户名

在收到请求后我们就执行了一个shell脚本,这个shell脚本就是调用svn update去更新我们的代码了。

假设你的服务器IP是119.29.35.39,http服务的端口是8080,那么我们就应该配置上面的链接地址为:http://119.29.35.39:8080/afterCommit

钩子的配置

配置好了后,我们可以点击测试按钮进行测试,这样就会手动的触发一次链接请求,并且在下面区域显示调用记录、是否成功

调用记录

好了,一个简单的钩子就配置完成

PS:热心网友提供的PHP版本

相关文章

  • 如何利用SVN钩子自动更新网站

    钩子是什么?其实和回调是一个概念,当某个事情发生时就会调用你提供的方法 利用好SVN钩子可以大大的方便你的开发 比...

  • git配置自动部署代码

    git 配置自动更新(部署)代码 刚开始一直莫不这头绪,想了想svn的做法是利用钩子原理,就到git项目的目录看了...

  • SVN 钩子 自动更新

    应CTO要求:在SVN上写一个shell脚本,实时更新提交的文件,俗称钩子

  • SVN利用钩子配置更新SVN目录

    1,前言: 假设你服务器上有个开发版本的项目,这个项目是你CheckOut出来的。然后你刚好把这个项目CheckO...

  • svn配置之centos7下svn文件提交后自动同步更新到网站目

    本文记录通过svn的钩子脚本实现本地提交svn后,自动同步代码文件到服务器的网站目录下,而不必手动同步。 假如现在...

  • linux下svn使用钩子自动更新

    我在linux云服务器上搭建了svn。为了使每次本地svn提交的代码自动更新wwwroot下的项目中。 决定使用钩...

  • svn钩子

  • svn钩子

    对于svn的钩子,在你出发相应的动作之后,这些钩子会自动被调用,你只要写好要执行的命令就行,其实就是一个脚本: 完...

  • SVN钩子随笔

    通过SVN钩子限制提交的条件 1. "钩子"是什么? 钩子, 通常意义上讲就是可以钩到某个事物上, 而这里的钩子其...

  • 使用Python写服务器端的SVN Hook

    什么是SVN Hook SVN hook 脚本,大都译为SVN钩子,提供了一种非常强大而且灵活的方式把代码库的各种...

网友评论

    本文标题:如何利用SVN钩子自动更新网站

    本文链接:https://www.haomeiwen.com/subject/mitdtftx.html