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

使用脚本批处理让-Hexo 一键部署 deploy 和推送 push 到远程仓库

  •  
  •   shanlan · 2019-08-19 16:36:38 +08:00 · 1571 次点击
    这是一个创建于 1709 天前的主题,其中的信息可能已经有所发展或是发生改变。

    缘由

    通常 Hexo 博客程序需要使用命令进行生成然后再部署到服务器,如果备份博开程序的话,还需要使用 Git 进行 push 操作,异常的繁琐。为此,我将利用脚本功能,来实现自动化操作,降低重复劳动。

    操作方法

    1. 新建 txt 记事本文件:deployHexo.cmd

    2. 将以下批处理代码粘贴到你刚建立的 txt 内,然后根据你的实际情况进行修改,下面是 Hexo 的 deploy 部署脚本

      @echo off
      D: ::切换到你 hexo 程序所在的磁盘,例如我是在 D 盘
      cd D:\GitHub_Pages\Hexo-git\shanlancoding.github.io ::切换到你 Hexo 程序的完整目录
      hexo g -d && mshta vbscript:msgbox("部署完成,准备 push 源程序到仓库",6,"部署完成")(window.close) && color 4 && call pushHexo.cmd ::这一行其实有四条命令,通过&& 符号连接起来执行
      

      下面是把 Hexo 源程序通过 Git push 到远程仓库的批处理脚本,也就是备份你的 Hexo 程序

      新建文件名:pushHexo.cmd保存

      @echo off
      set /p commit=commit:
      title auto commit
      cd C:\Program Files\Git\bin\
      git.exe add -A
      git.exe commit -m %commit%
      git.exe push
      echo 命令执行完毕,请按任意键关闭
      pause >null
      

    命令详解

    deployHexo.cmd 文件

    1. @echo off 关闭不必要的批处理提示语
    2. D: 切换到你 hexo 程序所在的磁盘,例如我是在 D 盘
    3. cd D:\GitHub_Pages\Hexo-git\shanlancoding.github.io 切换到你 Hexo 程序的完整目录
    4. hexo g -d Hexo 命令,生成静态页面文件
    5. mshta vbscript:msgbox("部署完成,准备 push 源程序到仓库",6,"部署完成")(window.close) 弹出 Windows 对话框,用于提示
    6. color 4 修改控制台的字体颜色
    7. call pushHexo.cmd 调用另一个批处理文件

    pushHexo.cmd 文件

    1. set /p commit=commit: 设置变量用来接收你输入的 push 描述
    2. title auto commit 设置批处理窗口的标题
    3. cd C:\Program Files\Git\bin\ 切换到你的Git.exe目录,注意是 Git.exe ,而不是 git-bash.exe,由于我的 Git 本身安装在 C 盘,若你的安装在 C 盘以外,例如 D 盘,则在执行这条命命令之前还需要添加一条命令:D:
    4. git.exe add -A 添加所有变动的文件到本地 Git 暂存区
    5. git.exe commit -m %commit% 将本地 Git 暂存区的文件提交给本地仓库,并且戴上了本次提交的描述
    6. git.exe push 将本地仓库文件推送给远程仓库,可以理解为上传
    7. echo 命令执行完毕,请按任意键关闭 批处理的提示语
    8. pause >null 让批处理界面暂停而不会自动关闭界面

    使用方法

    1. 当你把两个文集都修改完成后,双击启动deployHexo.cmd文件后,批处理将会自动调用hexo generatehexo deploy

    2. deployHexo.cmd文件执行完毕后,将会有一个系统弹窗来提醒你,输入一个 push 消息,然后就可以回车确认了

    最后欢迎大家访问我的博客,一起学习交流、进步

    原文:Git 修改远程仓库 URL,添加 Fetch/Pull 的 URL 的解决方法 | 山岚 - 90 码农历险记

    1 条回复    2019-08-20 23:18:33 +08:00
    shanlan
        1
    shanlan  
    OP
       2019-08-20 23:18:33 +08:00
    一天过去了,一条回复都没有,是没人用吗?也不对啊,有人收藏的,难道还有更完美的解决方法吗?
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5362 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 07:29 · PVG 15:29 · LAX 00:29 · JFK 03:29
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.