Hugo - 如何一键发布新文章?
你还在为使用 hugo 发布文章时的繁琐步骤烦恼吗?
本文默认你已经掌握了 hugo + Github Pages 的博客搭建。
我会以 Windows 平台作为演示,其它系统可参照思路,大同小异。
一、安装 Git
先安装 git bash ,官网:https://git-scm.com/downloads
二、使 public 目录成为一个 git repository
博客源码存放目录:D:\blog\src
D:\blog\src
│ config.toml
├─archetypes
├─assets
├─content
├─data
├─layouts
├─public
├─resources
├─static
└─themes
接下来将 git 仓库(xxx.github.io)的 .git 文件夹和 CNAME 文件复制一份到博客根目录的 public 文件夹中,使 public 目录成为一个 git 仓库(repository)。
这样 hugo 在 public 文件夹中生成的文件就可以直接使用 git 命令推送到 Github 了。
如果配合 Github Webhook 使用,就可以把 xxx.github.io 当做源站了。在此基础上,你可以自行购买域名做 CDN 或者在自己的服务器上部署一个镜像站。
三、配置一键命令
我决定将 git blog
这个命令作为以后日常一键部署的命令。输入以下命令即可完成配置:
git config --global alias.blog '!cd D:\\blog\\src;hugo;cd D:\\blog\\src\\public;git add .;git commit -m 'update';git push'
使用 alias 即可为一系列命令配置一个别名
四、一键部署
当你写好文章之后,就可以在任意目录执行这个命令:
git blog
此时系统会自动执行下面的命令:
cd D:\\blog\\src
hugo
cd D:\\blog\\src\\public
git add .
git commit -m 'update'
git push
这样就达到了我们的目的:通过一个命令就可以更新博客文件,并自动推送到 github 上。
补充
如果你同时使用了 Github Pages
和 Gitee Pages
服务,并且还希望能一条命令同时推送到 Github 和 Gitee,那么你可以参考 https://zhuanlan.zhihu.com/p/341272233,修改 git blog
对应的命令即可。
给你提个醒:git push github
,git push gitee
。
希望本文能帮到正在使用 hugo 的你。