【方法】Git+NodeJS+Hexo+Github搭建博客的方法
参考博客:
- 从零开始搭建:https://fanyfull.github.io/2021/10/16/Github-Hexo-真-从零开始搭建-GitHub-静态博客/
- butterfly主题配置参考:https://butterfly.js.org/tags/butterfly/page/2/
- gitpage使用参考:https://docs.github.com/zh/pages/quickstart
- hexo配置文档:https://hexo.io/zh-cn/docs/
- butterfly主题详解:https://www.mahaofei.com/post/a33e3ec
- yun主题:https://github.com/YunYouJun/hexo-theme-yun
Github创建仓库
- https://github.com/
登录 GitHub 账号,新建一个名为username.github.io的仓库。记下自己的用户名、邮箱。记得
NodeJS安装与配置
- 下载:https://nodejs.org/
- 记得勾选
add to path,要不还得自己去把D:\~\Git\cmd添加到环境变量Path里。 - 安装完成后cmd中使用
node -v和npm -v验证安装。
Git安装与配置
1. 默认安装即可,安装完成后去目录C:\Users\用户名\.ssh右键后点击Open Git Bash Here
2. 使用以下代码配置用户名和邮箱,替换成自己github的即可。
1 | |
1 | |
3. 使用以下命令生成密钥对,推荐是起个比较独特的名字之后好找,然后也推荐使用口令保护自己的私钥,这里的口令相当于智能密码钥匙的PIN,都是用来保护私钥的,如果私钥文件泄露,别人不知道你的口令也无法使用该私钥。
1 | |
执行完成后会在.ssh文件夹下生成两个文件“文件名”,“文件名.pub”,比如githubioblog和githubioblog.pub,前者是私钥,后者是公钥,私钥是需要保密的,公钥是公开的。使用下面的命令查看自己的密钥:ssh-add -l,如果返回说没有密钥,那就用这条命令添加私钥文件ssh-add 文件名,这条命令会添加C:\Users\用户名\.ssh\文件名路径下的私钥文件。
为了避免以后每次开一个git终端都要添加一次密钥,在.ssh文件夹下建一个文件config,内容用记事本写入,用户名和文件名替换成自己的用户名和私钥文件名
1 | |
4. 在Github访问https://github.com/settings/ssh/new将公钥告知Github,名称按自己喜好填,作用选择Auth认证用,然后将公钥用文本文档打开将内容粘贴上去,公钥格式大概是这样,中间隐去了。
1 | |
5. 使用如下命令让ssh-agent启动,执行完以后看不到什么但其实已经启动了。之后每次ssh连接的时候都需要先启动ssh-agent。
1 | |
6. 使用如下命令测试与github的连接是否成功。
1 | |
**7. **可选配置代理,如果有的话,socks是使用如下命令,端口需要替换成自己的:
1 | |
比如我使用hysteria2的话可以用如下命令
1 | |
使用cnpm替代npm命令
npm命令因网络原因用不了的话,可以在Git Bash中使用以下命令安装cnpm,然后就可以用cnpm替代npm命令了。npm install cnpm -g --registry=https://registry.npmmirror.com
Hexo本地安装与配置
- 随便路径打开一个终端(文件夹地址栏输入cmd回车),输入下面的指令安装Hexo
1 | |
网不好的可能会慢,界面也没啥进度提示,反正等到返回added多少多少package就是安装完了。使用这个命令测试一下npx hexo能执行就ok。
建立一个文件夹用于存放博客文件,然后在该文件夹下开个cmd终端(文件夹地址栏输入cmd回车),输入
hexo init进行本地博客目录初始化。如果网络不通可以尝试使用上面的代理配置。清理静态文件,生成静态文件,换了主题、写了文章之类修改后清理旧文件,生成新文件。
1 | |
1 | |
- 启动本地服务进行预览,输入命令后访问
http://localhost:4000/应该就能看到本地页面了。
1 | |
(可选)Hexo更换主题butterfly
可以去https://hexo.io/themes/挑,这里以butterfly为例:
预览:https://butterfly.js.org/
仓库:https://github.com/jerryc127/hexo-theme-butterfly
安装教程:https://butterfly.js.org/tags/butterfly/page/2/
一些其他主题
1 | |
如果要切回默认的修改_config.yml中theme为默认的theme: landscape即可
Hexo上传github并进行同步
Git Bash安装部署组件:cnpm install hexo-deployer-git --save
安装完成后使用hexo d即可部署到github上。
然后进入对应仓库Settings页面
Hexo文章操作
- 新建文章
1 | |
- 新建分类
1 | |
找到source/categories/index.md并添加type: "categories"
3. 新建标签
1 | |
找到source/tags/index.md并添加type: "tags"
4. 分类和标签的使用
文章的开头添加相关分类即可,比如:
1 | |