最近更新hexo比较频繁,发现频繁性的推送master分支以及source源文件备份,比较繁琐,查询了官方文档,可以写一些监听函数,实现一些自动化部署,hexo默认将脚本放置在scripts文件夹下,以下代码可以在hexo new的时候自动打开默认编辑软件
1 2 3 4 5
| var spawn = require('child_process').exec;
hexo.on('new', function(data){ spawn('start "markdown编辑器绝对路径.exe" ' + data.path); });
|
非常的方便,省去了我打开typora的时间
以及以下的代码可以实现自动部署source分支
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36
| require('shelljs/global');//记得安装包
try { hexo.on('deployAfter', function() {//当deploy完成后执行备份 run(); }); } catch (e) { console.log("You make a wrong:" + e.toString()); }
function run() { if (!which('git')) { echo('Sorry, this script requires git'); exit(1); } else { echo("======================Auto Backup Begin==========================="); cd('./'); if (exec('git add --all').code !== 0) { echo('Error: Git add failed'); exit(1);
} if (exec('git commit -am "Form auto backup script\'s commit"').code !== 0) { echo('Error: Git commit failed'); exit(1);
} if (exec('git push origin source').code !== 0) { echo('Error: Git push failed'); exit(1);
} echo("==================Auto Backup Complete============================") } }
|
参考文献
https://hexo.io/zh-cn/docs/plugins#%E5%B7%A5%E5%85%B7