ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Hexo + github搭建个人博客(2022年7月)

2022-07-16 13:00:49  阅读:166  来源: 互联网

标签:github cnpm hexo 博客 blog 2022 Hexo


本文方案适用时间节点:2022年7月16日。

容易踩坑的地方是「部署博客到 github」。

安装相关环境

1. 安装 Node.js

由于 Hexo 需要 Node.js 支持,因此我们进入官网下载 Node.js ,选择 LTS (长期支持版)。

我这是 MacOS 系统,Windows 系统也类似。

image-20220716090853055

进行对应的下载安装即可,下载完成会有 Node.js 以及包管理工具 npm。

可进入命令行终端查看 Node.js 和 npm 版本:

image-20220716091416454

2. 接下来我们借助 cnpm 来安装 Hexo 框架。

由于国内 npm 下载包的速度较慢,我们先安装淘宝的 cnpm 包管理器,借助它来下载 Hexo 框架。

# 安装淘宝的 cnpm 管理器
npm install -g cnpm --registry=http://registry.npm.taobao.org	
# 查看 cnpm 版本
cnpm -v

终端演示图:

image-20220716092559970

安装 Hexo 框架

# 安装 Hexo 框架
cnpm install -g hexo-cli
# 查看 Hexo 版本
hexo -v

终端演示图:

image-20220716092627934

创建 Hexo 本地目录

mkdir blog # 创建 blog 目录
cd blog # 进入 blog 目录
sudo su # 使用 root 权限(之后 hexo g 等操作都需要 root 权限)
sudo hexo init # 初始化 blog 目录(类似在本地创建 git 管理的仓库时的初始化)
hexo s # 启动本地博客服务

终端演示图:

image-20220716093817292

浏览器查看博客页面(默认的主题就这样啦,有点丑的):

image-20220716094114792

目前为止,我们实现了「在本地访问自己搭建的博客」,下面实现「在任何设备上访问博客」。

将 blog 目录部署到 github

1.生成 Personal access tokens(推荐使用这种方式)

进入 Developer settings

image-20220716104806862

生成 token,自己设置「过期时间」和「访问权限」,我是设置成了「永不过期」并开启了所有「访问权限」:

image-20220716104912106

先把 token 复制一份留着(等下要用),下次你再进到这个页面 token 内容就被隐藏了。

2. 在 github 创建一个新的仓库,仓库名为 <你的账户名>.github.io(一定要是这种命名方式)。

image-20220716094850573
image-20220716094957760

3. 在 blog 目录下安装 git 部署插件

cnpm install --save hexo-deployer-git 
iShot_2022-07-16_10.10.53

4. 配置 _config.yml(在 blog 目录下)

vim _config.yml

划到最后,修改成下面这个样子:

记得冒号后面空一格!

# Deployment
## Docs: https://hexo.io/docs/one-command-deployment
deploy:
  type: git 
  repository: https://<刚才生成的TOKEN>@github.com/<USERNAME>/<REPO>.git # < > 中的内容自己进行替换,< > 记得去掉。
  branch: main # 用 main 还是 master 随你,都行。

这么写 repository 的好处在于可以实现免密登陆。

5. 部署 blog 到 github(终于来啦!)

hexo c # 清理一下缓存,防止一些修改未生效
hexo g # 生成页面的命令
hexo d # 部署到 github 远程仓库
image-20220716110834206

6. 登陆看看

在浏览器地址栏输入 <你的仓库名>.github.io。

image-20220716111127000

这样一来,我们就可以在其他设备上访问自己的博客啦!

排坑

用户密码错误

以往的很多教程在配置 _config.yml 文件时,repository 是单纯用的 https 地址,目前确实也还能用,不过每次都需要手动输一遍账户密码,很是烦人。

这种方式在你 hexo d部署博客到 github 时,需要你输入账号和密码,但「这里的密码不是你的登陆密码」,而是上文提到的「Personal access tokens」。

举个例子:

image-20220716112934940

hexo c & hexo g之后进行部署:

image-20220716113240468

看日志可知:由于 github 在 2021 年 8 月 13日将原有的用户密码验证方式替换成了「personal access token」,因此我们这里需要将用户密码替换成「personal access token」。

部署失败的其他原因

1.user.name 和 user.email 没配置好。

解决方式:

# 全局配置命令
git config --global user.name <用户名>
git config --global user.email <邮箱>

2. github 网络连接的问题,导致部署时超时。

解决方式:

  • 多试几次(简单粗暴);
  • 想办法提高 github 访问速度:百度一下。

参考

标签:github,cnpm,hexo,博客,blog,2022,Hexo
来源: https://www.cnblogs.com/Allen-mat/p/16483934.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有