hexo博客操作一文通
一、环境与工具
1.1 安装node.js
安装node.js不赘诉,具体参考这个:安装node.js
1.2 安装git
git主要是用来向提交GitHub代码的,安装git不赘诉
1.3 安装sourcetree
我们去官网下载:https://sourcetreeapp.com/
安装完毕记得:
- 添加GitHub账户
- 配置ssh密钥
密钥配置相关请看本文:相关操作-生成密钥连接GitHub
二、相关操作
2.1 安装hexo
- 我们在命令行中输入:
1 | npm install -g hexo-cli |
- 安装完后输入
hexo -v
验证是否安装成功。
2.2 GitHub博客仓库的创建
- 点击右上角的
+
按钮,选择New repository
,创建一个<用户名>.github.io
的仓库。
注意:1. 仓库名必须是上面这种格式,不然无法通过域名访问;2.仓库设置为公开;3. 添加一个README文件
- 打开Git Bash的窗口,点击电脑左下角开始即可看见Git Bash。
- 配置我们Github的用户名和邮箱
1 | git config --global user.name "你的用户名" |
- 配置完成,通过
git config -l
检查是否配置成功,如果出现刚刚输入的邮箱和用户名就是成功了。
2.3 生成密钥连接GitHub
- 执行以下命令生成ssh公钥,此公钥用于你的计算机连接Github。
1 | ssh-keygen -t rsa -C "你的邮箱" |
- 之后打开
%USERNAME%\.ssh
文件夹,会看到 id_rsa.pub
- 用记事本打开上述图片中的公钥(id_rsa.pub),复制里面的内容,然后开始在github中配置ssh密钥。
-
将 SSH KEY 配置到 GitHub
进入github,点击右上角头像 选择
settings
,进入设置页后选择SSH and GPG keys
,名字随便起,公钥填到Key
那一栏。 -
测试连接,输入以下命令
1 | ssh -T git@github.com |
如果出现连接到账户的信息,说明已经大功告成
2.4 创建hexo项目
- 打开cmd命令窗口,输入命令创建工程文件夹:
1 | hexo init blog-demo(项目名) |
- 进入
blog-demo
,输入npm i
安装相关依赖。
1 | cd blog-demo //进入blog-demo文件夹 |
2.5 运行本地项目
输入命令
1 | hexo cl; hexo g; hexo s |
2.6 将静态博客挂载到 GitHub
-
到博客项目根目录下,使用cmd安装 hexo-deployer-git
1
npm install hexo-deployer-git --save
-
修改 _config.yml 文件
在blog-demo目录下的_config.yml,就是整个Hexo框架的配置文件了。可以在里面修改大部分的配置。详细可参考官方的配置描述。
修改最后一行的配置,将repository修改为你自己的github项目地址即可,还有分支要改为main
代表主分支(注意缩进)。1
2
3
4deploy:
type: git
repository: git@github.com:poetmilk/poetmilk.github.io.git
branch: main -
修改好配置后,运行如下命令,将代码部署到 GitHub(Hexo三连)。
1
hexo clean; hexo generate; hexo deploy
-
hexo clean:删除之前生成的文件,若未生成过静态文件,可忽略此命令。
-
hexo generate:生成静态文章,可以用
hexo g
缩写 -
hexo deploy:部署文章,可以用
hexo d
缩写注意:deploy时可能要你输入 username 和 password。
如果出现
Deploy done
,则说明部署成功了。稍等两分钟,打开浏览器访问:https://poetmilk.github.io ,这时候我们就可以看到博客内容了。
-
2.7 sourcetree本地仓库操作
三、写文章重要操作
3.1 本地运行博客
1 | hexo cl; hexo g; hexo s |
3.2 GitHub运行博客
1 | hexo clean; hexo generate; hexo deploy |
3.3 文章内的链接跳转
1 | # 设置锚点 |
3.4 文章间的链接跳转
1 | [跳转到跨域相关问题](/posts/753dcf2.html) |
3.5 分栏
1 | {% tabs 分栏 %} |
3.6 引用
1 | {% note info flat %}{% endnote %} |
3.7 折叠框
注意:其中的颜色可调整
1 | {% folding green, 查看代码测试 %} |
查看代码测试
</div>
</details>
3.8 文字颜色
1 | {% p red, 红色 %} |
红色
黄色
绿色
青色
蓝色
灰色