Jekyll自动检测代码更新

Jekyll自动检测代码更新

jekyll是一个静态博客生成软件, 我们把代码放在一个仓库里, 只要远程代码更新, 我们就从把它拉到自己的服务器, 然后重新启动jekyll.

cd /root/blog
git clone outproject

设置定时器

自动拉取代码重新部署jekyll:

crontab -e
*/1 * * * * /root/blogpull.sh  >> /root/cronblogpull.log

/root/blogpull.sh如下:

脚本文件内容

#! /bin/bash

result=$(cd /root/blog && git pull | grep "Already up-to-date")
if [[ "$result" != "" ]]
then
  exit 0
  #echo "`date '+%Y%m%d %H:%M'`:不需要更新代码"
else
  echo "`date '+%Y%m%d %H:%M'`:代码已经更新,开始"
  ps -ef|grep jekyll | awk '{print $2}'| sed -n '1,1p' | xargs -i kill {}
  rm -rf /root/_site
  jekyll serve -H '0.0.0.0' -s '/root/blog' >/dev/null 2>&1 &
fi

/root/blog为我们jekyll静态文件所在的仓库路径.

原文地址:https://www.cnblogs.com/nima/p/11751469.html

时间: 2024-10-12 07:16:42

Jekyll自动检测代码更新的相关文章

Android应用更新自动检测下载

由于Android项目开源所致,市面上出现了N多安卓软件市场.为了让我们开发的软件有更多的用户使用,我们需要向N多市场发布,软件升级后,我们也必须到安卓市场上进行更新,给我们增加了工作量.因此我们有必要给我们的Android应用增加自动更新的功能. 既然实现自动更新,我们首先必须让我们的应用知道是否存在新版本的软件,因此我们可以在自己的网站上放置配置文件,存放软件的版本信息: 1 <update> 2 <version>2</version> 3 <name>

Android Studio代码自动检测错误提示

Android Studio的代码自动检测的错误提示方式感觉有点奇葩,和Eclipse差别很大,Eclipse检测到某个资源文件找不到或者错误,都会在Project中对应的文件前面打叉,但是Android Studio不用这种方式,所以估计你刚开始找半天找不到错误提示到底在哪?这个错误提示的方式是直接进行了整理归类,不像Eclipse在对应的文件前打叉显示.那如何打开错误提示的列表,如下图: 做个补充,可能很多人会找不到Message在哪,其实你只要选择Build,然后把工程clean或者reb

iOS程序自动检测更新的实现

本文转载至 http://blog.csdn.net/davidsph/article/details/8931718 App Store自动更新itunes 之前项目需要用到app自动更新的功能,现将实现方案分享出来.iOS程序自动提示更新的实现方案大致分为两种:第一种,自己服务器提供一个接口,告知相关app的当前版本,是否需要更新,以及更新的地址等信息 .第二种,就是利用苹果的appstore 提供的相关api进行查询更新. 由于此前没有找到iOS程序更新的方法,就用了第一种方式,但后来发现

iOS 开发笔记 - 开发中如何实现自动检测更新APP

1.获取当前项目APP版本号 2.拿到AppStore项目版本号 3.对比版本号,实现更新功能 直接上代码: #import "ViewController.h" //1一定要先配置自己项目在商店的APPID,配置完最好在真机上运行才能看到完全效果哦 #define STOREAPPID @"1080182980" @interface ViewController () @end @implementation ViewController - (void)vie

iOS自动检测版本更新

虽然苹果官方是不允许应用自动检测更新,提示用户下载,因为苹果会提示你有多少个软件需要更新,但是有的时候提示用户一下有新版还是很有必要的. 首先说一下原理: 每个上架的苹果应用程序,都会有一个应用程序的ID,根据这个ID我们就可以获取到当前程序的最新版本号,然后和自己的版本号作比较,如果一样的话就是最新版,反之就不是新版,就可以提示用户来手动下载最新版的程序.因为有ID所以就可以定位到这个APP,点击下载即可. 源码: 一般建议检测更新的代码放到主页控制器里. 首先还要导入一个头文件用来打开App

json 对c++类的序列化(自动生成代码)

[动机] 之前写网络协议的时候,使用的是google protobuf,protobuf不但在性能和扩展性上有很好的优势,protoc自动生成c++类代码的工具,这点确实给程序员带来了很多便利. 做后面一项目使用的json格式来传输,然后就萌生了实现像protoc这样的工具,根据json文件来生成c++类代码,并且生成序列化代码,这样在写网络的时候就无需把jsonvalue序列化散落在各处. [思路] 之前写object-c的时候,如果你要对类的序列化,你必须实现NSCoding协议(接口),

RubyMain2016.2配置自动同步代码到服务器功能

可以参考rubymain帮助文档:https://www.jetbrains.com/help/ruby/deployment-in-rubymine.html 在rubymain工具的Tools>Deployment>Configuration打开如下界面 我的rails工程代码放在192.168.2.71(我是在vmware上装的redhat系统)的/usr/local/jianbo/demo目录下 里面的重要配置说明一下: 1.创建我就不讲了,按提示来操作(注意:创建的时候要选sftp)

LoonAndroid自动检测输入框 (转)

LoonAndroid框架,同时给我们提供了一套自动检测输入规则的工具,用起来很是方便,下面介绍一下这个东东的使用方法(注意,该说明是基于项目已经集成了LoonAndroid框架而言,如果您未集成该框架,请先按照相关说明集成该框架而后方能使用): 1.Validator 验证器类 ①实例化: Validator validator = new Validator(this): ②设置监听回调:validator.setValidationListener(...) 其中监听接口为:Validat

LoonAndroid自动检测输入框 --- Author: rose &amp;&amp; [email&#160;protected]

LoonAndroid框架,同时给我们提供了一套自动检测输入规则的工具,用起来很是方便,下面介绍一下这个东东的使用方法(注意,该说明是基于项目已经集成了LoonAndroid框架而言,如果您未集成该框架,请先按照相关说明集成该框架而后方能使用): 1.Validator 验证器类 ①实例化: Validator validator = new Validator(this): ②设置监听回调:validator.setValidationListener(...) 其中监听接口为:Validat