前天,博客证书问题解决后终于上线,今天就发现某些代码不满意,于是更改代码、提交、推送,本地下载,再用宝塔面板上传文件,上传时时刻想着刚才改了哪些代码。博客程序还没完全开发完成,以后天天这样改的话,怎么受的了?以前也想过配置github的webhook,实现代码自动更新,最终感觉技术太复杂而放弃,今天终于下定决心去探索一番。

安装webhook

在宝塔面板软件管理处,安装宝塔webhook插件,不得不说宝塔的web面板使用起来真是方便。

编写shell命令

这命令咱也熟,直接百度,找到《宝塔 webhook 的使用》,原博写的很详细,按照教程来就行,这里记录保存一下代码:

#!/bin/bash
echo ""
#输出当前时间
date --date='0 days ago' "+%Y-%m-%d %H:%M:%S"
echo "Start"
#判断宝塔WebHook参数是否存在
if [ ! -n "$1" ];
then
          echo "param参数错误"
          echo "End"
          exit
fi
#git项目路径
gitPath="/www/wwwroot/web/$1"
#git 网址
gitHttp="http://git.xxxxx.com/web/$1.git"

echo "Web站点路径:$gitPath"

#判断项目路径是否存在
if [ -d "$gitPath" ]; then
        cd $gitPath
        #判断是否存在git目录
        if [ ! -d ".git" ]; then
                echo "在该目录下克隆 git"
                git clone $gitHttp gittemp
                mv gittemp/.git .
                rm -rf gittemp
        fi
        #拉取最新的项目文件
        git reset --hard origin/master
        git pull
        #设置目录权限
        chown -R www:www $gitPath
        echo "End"
        exit
else
        echo "该项目路径不存在"
        echo "End"
        exit
fi

命令代码复制过来,改下网站路径就可以用了。不过这段代码里却有个不大不小的坑,把我坑的不轻。

.gitignore忽略文件不起作用?

代码可以拉取了,不过像数据库配置文件之类的,我本机修改后并不想再更新,可发现.gitignore不起效果,怎么回事呢?请看我的下篇博文《.gitignore忽略文件更新不起作用的解决办法》



评论

提交取消回复
[face]@
[uname]  [add_time]
[content]
[reply]
加载更多评论