用 hexo 和 github 搭建静态博客系统
许多人都希望自己有一个博客,但有时会觉得要搭个博客很繁琐,需要各种各样的环境,其中不知道还会出现什么错误信息,如果你曾经或者现在正有这样的想法,只要你跟着这篇文章动手起来,很快就能让你快速拥有自己的博客网站,记录生活的点滴。
环境准备
- Git
- NodeJs
配置github
- 有一个github 账号
- 建立一个与你用户名对应的仓库,eg: yourUserName.github.io (挂载GitHub Pages,用于网站浏览)
- 建立一个在blog仓库用来存放源码
- 配置ssh-key
安装hexo
安装
1
# npm install -g hexo-cli
初始化Hexo
git clone blog仓库地址
<folder>
到本地1
2
3# hexo init <folder>
# cd <folder>
# npm install启动服务
1
2# hexo server
[info] Hexo is running at http://localhost:4000/. Press Ctrl+C to stop.这样在本地就能看到你的blog了, 这样就能在本地调试你的blog了
本地调试
1 | # hexo new "newPost" 新建文章 |
配置并发布
新建一篇文章
1
# hexo new "My New Post" //会在目录下生成 source\_posts\My-New-Post.md
可以用
markdown
语法来编写你的文章配置_config.yml
找到下面的内容1
2
3
4
5
6...
# Deployment
## Docs: http://hexo.io/docs/deployment.html
deploy:
type:把它们修改为
1
2
3
4
5
6
7
8
...
# Deployment
## Docs: http://hexo.io/docs/deployment.html
deploy:
type: git
repository: git@github.com:yourUserName/yourUserName.github.io.git
branch: master注意:
repository: 必须是SSH形式的url
eg:git@github.com:yourUserName/yourUserName.github.io.git
而不能是HTTPS形式的url
https://github.com/yourUserName/yourUserName.github.io.git
,否则会出现错误
如果你是为一个项目制作网站,那么需要把branch设置为gh-pages。发布
1
# hexo deploy
配置 GitHub Actions
将本地的博客源文件push到github仓库的时候自动触发发布
- 准备秘钥
通过ssh-keygen
生成一对公钥密钥
在右上角个人资料中的 Settings->SSH and GPG keys
添加刚刚生成的公钥
在blog仓库的Settings->Secrets
里添加刚刚生成的私钥,名称为 ACTION_DEPLOY_KEY
- 在
blog源码仓库
的Actions选项卡下点击新建workflow,编写如下配置。
这里的
blog 源码仓库
是用来存储博客源文件,上面那个yourUserName.github.io
用于挂载GitHub Pages
1 | # This is a basic workflow to help you get started with Actions |
添加自定义域名解释
把域名用CNAME的方法解析到 yourUserName.github.io.git.
在source文件夹里添加CNAME文件并添加你自己的域名
1
xxx.yyy.zzz
日常部署步骤
1 | # hexo clean |
添加“Fork me on Github” ribbon
打开这个ribbon 把a 标签的代码粘贴到 themes\next\layout\layout.xxx
中,放置在 最后,标签