宿迁腾云网络网站建设公司

腾云网络 八年经验专注网站建设
  • 首页
  • 服务项目
    • 网站建设
    • 微信小程序
    • APP开发
    • SEO优化
  • 建站费用
  • 成功案例
    • 网站建设案例
    • 小程序案例
    • APP开发案例
    • SEO优化案例
  • 行业动态
    • 网站建设
    • SEO优化
    • 技术日志
  • 联系我们
    • 关于我们
首页 > 行业动态 > 技术日志 > 什么时候检测的hook默认有三个:post-用于代码进行检测

什么时候检测的hook默认有三个:post-用于代码进行检测

2021-10-15

我们都知道有一种世界上最好的语言。

但是在实际项目中php代码在线测试,还要考虑历史过程php代码在线测试,避免出现一些导致程序无法运行的错误,比如语法错误,所以需要对代码进行检查。要实现这个目标,需要解决几个问题:

  什么时候检测代码,并拒绝异常代码的提交
  以什么做标准
  通过什么工具来检测

何时检测

默认有三个钩子:post-pre-

其中:post-用于代码提交完成后的操作,比如提交完成后发布代码,或者做一些通知

pre-在代码提交时使用,可以用来检测代码,如果有异常,可以阻止代码提交

类似于 pre-,但它可以检测多个分支。

这次使用前。有关它们的更多信息,请参阅:

什么标准

使用这个时间,详细参考

部署步骤如下:

1. 服务端需要对应的php版本,举例

安装php5.6
sudo apt-get purge `dpkg -l | grep php| awk '{print $2}' |tr "\n" " "`
sudo add-apt-repository ppa:ondrej/php
sudo apt-get update
sudo apt-get install php5.6
sudo apt-get install php5.6-mbstring php5.6-mcrypt php5.6-mysql php5.6-xml
安装composer
curl -sS https://getcomposer.org/installer | sudo php -- --install-dir=/usr/local/bin --filename=composer

2.通过安装

切换到git用户安装
su git
composer require overtrue/phplint -vvv

用什么工具检测

Git hook支持任何可执行语言,php、ruby、perl等,以这个为例

1. 进入对应项目的仓库。默认是软连接。删除它并重新创建它。注意,不要直接去删除原来的hook。

rm hooks
mkdir hooks
chown git:git hooks
建个临时文件夹
mkdir /tmp/gits
chmod 777 /tmp/gits

2.添加pre-,内容如下,注意执行权限

#!/usr/bin/env python
#coding:utf8
import re
import os
import sys
import fileinput
import subprocess
def checkphp(filename):
    files = '/tmp/hooks/%s' % filename
    cmd = '/home/git/vendor/bin/phplint %s' % files
    p = subprocess.Popen(cmd, shell=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
    status = p.wait()
    result = p.stdout.read().split('\n\n')[-1]
    info =  re.sub("/tmp/hooks/","", result)
    return status,info
def main():
    tmp = []
    for line in fileinput.input():
         tmp.append(line.strip('\n'))
    data = tmp[0].split()
    old = data[0]
    new = data[1]
    state = 0
    staged_cmd = 'git diff --name-status %s %s' % (old,new)
    proc = subprocess.Popen(staged_cmd, shell=True, stdout=subprocess.PIPE)
    with proc.stdout as std_out:
        for staged in std_out.readlines():
            staged = staged.split()
            staged_file = staged[1]
            tag = staged[0]
            directory = os.path.dirname('/tmp/hooks/%s' % staged_file)
            if not os.path.exists(directory):
                os.makedirs(directory)
            if tag != 'D' and re.match('.*.php', staged_file):
                content = os.popen('git show %s:%s' % (new,staged_file)).read()
                openfile = open('/tmp/hooks/%s' % staged_file, 'w')
                openfile.write(content)
                openfile.close()
                status,info = checkphp(staged_file)
                if status == 1:
                    print '=================== error =======================' 
                    print info
                    state = 1
    sys.exit(state) 
if __name__ == '__main__':
    main()

以上步骤完成后,就可以查看php的语法了

Tag: post
网站制作公众号

宿迁腾云网络网站建设公司 | 网站开发 | 网站制作 | 网站优化

咨询电话:13160355545

上一篇

返回栏目

下一篇

免责声明:本站所有文章和图片均来自用户分享和网络收集,文章和图片版权归原作者及原出处所有,仅供学习与参考,请勿用于商业用途,如果损害了您的权利,请联系网站客服处理。

热推

  • 而后端开发语言是做什么用的呢?语言的区别
  • php 网站支付宝接口工商银行用户无法绑定工行快捷支付接口?(图)php网站支付宝接口
  • php编程培训2018年十大编程语言下表:现在不妨介绍跻身本列表中php编程规范
  • 从使用Java编程语言Just?编写的代码调用代码,可以在3.0上下载使用
  • php内容管理系统 开源开源就是开放源代码的意思,目前流行的开源网站程序开源cms系统 php
  • 兼职开发者论坛php开发无需下载成本的WebApp就是“免费打工”(图)兼职论坛 兼职论坛
  • 开源php erp管理系统大型项目领域中的项目管理方法-你并不知道什么更昂贵中文开源erp系统
  • 为什么说是未来的编程语言,其前景、薪资如何
  • php开发web应用一门语言是最基础的到底学什么语言最好呢?php web开发入门到精通
  • php网站源码加密健身类小程序前后端项目源码(代码开源,不加密)

相关

入门准备1.PHP的编程基础环境搭建能力(组图)

PHP IDEs与PHP CLI工具:助力高效PHP开发,满

PHP IDEs与PHP CLI工具:助力高效PHP开发,满

什么是PHP?其优势有简单易学、安全性高、开发效率高及社区活

什么是PHP?其优势有简单易学、安全性高、开发效率高及社区活

深入学习PHP编程基础与高级技术,掌握数字时代开发技能

PHP中七个常用框架介绍,详细解读ThinkPHP及其他框架

Science Technology:PHP开发平台发展历程

Science Technology:PHP开发平台发展历程

如何修复被黑客篡改的网站代码与数据库?入侵迹象与范围评估指南

如何修复被黑客篡改的网站代码与数据库?入侵迹象与范围评估指南

了解常见PHP应用程序安全威胁,掌握6个常见安全性攻击

了解常见PHP应用程序安全威胁,掌握6个常见安全性攻击

微信支付SDK漏洞曝光!谁会用到它?商家必看

大会现场蒋涛调查参会者,柳峰解析LBS与智能客服开发重难点?

大会现场蒋涛调查参会者,柳峰解析LBS与智能客服开发重难点?

标签

seo(1182) 市场营销(661) 网站制作(573) 网站建设(564) 搜索引擎(553) 网站(482) PHP(361) 编程语言(345) 建站(294) 关键词排名优化(267) 网站建设公司(245) 优化(216) seo排名(207) 域名(190) 软件(171) 网站优化(148) 搜索引擎优化(146) 外链(141) 科技(136) 网站关键词(124) 网站排名优化(123) 域名服务器(120) 网站排名(107) 时政(103) 排名优化(95) 搜索引擎收录(93) 网站设计(92) 电子商务(88) 引擎(86) 移动互联网(85) 开发框架(79) 开发(75) 网站服务器(74) 框架(68) 前端开发(68) 网站分析(66) 网站建设方案(65) 关键(64) 流量(63) 源码(62) 百度优化(62) 网站权重(61) 开放源代码(59) seo培训(53) 网页设计(51) 百度(51) php框架(50) 网站建设知识(50) 大数据(50) 谷歌(49)
宿迁腾云网络网站建设公司
网站建设
  • 私人定制
  • 标准模板建站
  • 经济模板建站
精品模板

宿迁腾云网络网站建设公司

联系电话:13160355545

公司地址:江苏省宿迁市丽景湾华庭北门都市花园公寓9楼907

联系邮箱:admin@tyweb.net

全国分站
  • 北京
  • 广东
  • 东莞 广州 中山 深圳 惠州 江门 珠海 汕头 佛山 湛江 河源 肇庆 潮州 清远 韶关 揭阳 阳江 云浮 茂名 梅州 汕尾
  • 山东
  • 济南 青岛 临沂 济宁 菏泽 烟台 泰安 淄博 潍坊 日照 威海 滨州 东营 聊城 德州 莱芜 枣庄
  • 江苏
  • 苏州 徐州 盐城 无锡 南京 南通 连云港 常州 扬州 镇江 淮安 泰州 宿迁
  • 河南
  • 郑州 南阳 新乡 安阳 洛阳 信阳 平顶山 周口 商丘 开封 焦作 驻马店 濮阳 三门峡 漯河 许昌 鹤壁 济源
  • 上海
  • 河北
  • 石家庄 唐山 保定 邯郸 邢台 沧州 秦皇岛 张家口 衡水 廊坊 承德
  • 浙江
  • 温州 宁波 杭州 台州 嘉兴 金华 湖州 绍兴 舟山 丽水 衢州
  • 陕西
  • 西安 咸阳 宝鸡 汉中 渭南 安康 榆林 商洛 延安 铜川
  • 湖南
  • 长沙 邵阳 常德 衡阳 株洲 湘潭 永州 岳阳 怀化 郴州 娄底 益阳 张家界 湘西
  • 重庆
  • 福建
  • 漳州 泉州 厦门 福州 莆田 宁德 三明 南平 龙岩
  • 天津
  • 云南
  • 昆明 红河 大理 文山 德宏 曲靖 昭通 楚雄 保山 玉溪 丽江 临沧 思茅 西双版纳 怒江 迪庆
  • 四川
  • 成都 绵阳 广元 达州 南充 德阳 广安 阿坝 巴中 遂宁 内江 凉山 攀枝花 乐山 自贡 泸州 雅安 宜宾 资阳 眉山 甘孜
  • 广西
  • 贵港 玉林 北海 南宁 柳州 桂林 梧州 钦州 来宾 河池 百色 贺州 崇左 防城港
  • 安徽
  • 芜湖 合肥 六安 宿州 阜阳 安庆 马鞍山 蚌埠 淮北 淮南 宣城 黄山 铜陵 亳州 池州 巢湖 滁州
  • 海南
  • 三亚 海口 琼海 文昌 东方
  • 江西
  • 南昌 赣州 上饶 吉安 九江 新余 抚州 宜春 景德镇 萍乡 鹰潭
  • 湖北
  • 武汉 宜昌 襄樊 荆州 恩施 孝感 黄冈 十堰 咸宁 黄石 仙桃 随州 天门 荆门 潜江 鄂州 神农架
  • 山西
  • 太原 大同 运城 长治 晋城 忻州 临汾 吕梁 晋中 阳泉 朔州
  • 辽宁
  • 大连 沈阳 丹东 辽阳 葫芦岛 锦州 朝阳 营口 鞍山 抚顺 阜新 本溪 盘锦 铁岭
  • 黑龙江
  • 齐齐哈尔 哈尔滨 大庆 佳木斯 双鸭山 牡丹江 鸡西 黑河 绥化 鹤岗 伊春 大兴安岭 七台河
  • 内蒙古
  • 赤峰 包头 通辽 呼和浩特 乌海 鄂尔多斯 呼伦贝尔
  • 贵州
  • 贵阳 黔东 黔南 遵义 黔西 毕节 铜仁 安顺 六盘水
  • 甘肃
  • 兰州 天水 庆阳 武威 酒泉 张掖 陇南 白银 定西 平凉 嘉峪关 临夏 金昌 甘南
  • 青海
  • 西宁 海西 海东 海北 果洛 玉树 黄南
  • 新疆
  • 乌鲁木齐 伊犁 昌吉 石河子 哈密
  • 西藏
  • 拉萨 山南 林芝 日喀则
  • 吉林
  • 长春 白山 白城 延边 松原 辽源 通化 四平
  • 宁夏
  • 银川 吴忠 中卫 石嘴山 固原
SiteMap
网站地图
TAG标签
Copyright © 2017-2025 TYWEB.NET 宿迁腾云网络科技有限公司 ALL RIGHTS RESERVED.   苏ICP备17033535号-1

热门搜索

百度 下载 2025 2024 2026 货源 货货源 虚拟 禅道 报名 金蝶KIS旗舰版
  • 客服

    在线客服

  • 电话

    13160355545

  • 微信

精品模板
建站费用
成功案例
联系我们