V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
wsgzao
V2EX  ›  Hexo

在 Windows 和 Macbook 上自动更新和推送 Hexo 至 GitHub

  •  
  •   wsgzao · 2018-08-06 10:18:37 +08:00 · 989 次点击
    这是一个创建于 2330 天前的主题,其中的信息可能已经有所发展或是发生改变。

    前言

    Hexo 自带 deploy 模块,网上也有很多大神分享各种各样的 CI/CD 方案,我没有想过写 Blog 需要这么复杂,而且 Hexo 已经很稳定了。我因为开始学习使用 MacBook,所以逼着自己把之前用在 Windows 上的脚本用 Python 重新写了下,很简陋但也很好用,相信大家可以写出更加通用和优美的代码。

    使用 Powershell 和 Python 自动化更新和推送 Hexo 静态 Blog


    更新历史

    2018 年 07 月 31 日 - 初稿

    阅读原文 - https://wsgzao.github.io/post/hexo-deploy/


    Windows

    ./deploy_hexo.ps1

    
    # hexo g
    cd .\hexo
    hexo clean
    hexo g
    
    # del old files
    cd ..\wsgzao.github.io
    Remove-Item about,archives,categories,css,fancybox,font,img,index,js,page,post -recurse -force
    
    # deploy github
    Copy-Item ..\hexo\public\* .\ -recurse -force
    git add *
    git commit -m "mod"
    git push
    
    cd ..
    
    

    MacBook

    python3 deploy_hexo.py

    import os
    import sys
    import subprocess
    
    hexo = os.path.join(os.getcwd(), "hexo")
    wsgzao = os.path.join(os.getcwd(), "wsgzao.github.io")
    
    home = os.getcwd()
    print ("current directory %s" % home)
    
    os.chdir(hexo)
    retval = os.getcwd()
    print ("chdir to hexo %s" % retval)
    
    subprocess.call(['hexo clean'], shell=True)
    
    subprocess.call(['hexo g'], shell=True)
    
    os.chdir(wsgzao)
    retval = os.getcwd()
    print ("chdir to wsgzao %s" % retval)
    
    subprocess.call(['rm -rf about archives categories css fancybox font img index js page post'], shell=True)
    
    subprocess.call(['cp -rf ../hexo/public/* ./'], shell=True)
    
    subprocess.call(['git add *'], shell=True)
    subprocess.call(['git commit -m "mod"'], shell=True)
    subprocess.call(['git push'], shell=True)
    
    
    
    目前尚无回复
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2872 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 29ms · UTC 12:51 · PVG 20:51 · LAX 04:51 · JFK 07:51
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.