由于本人对代码一窍不通,在创建博客的过程中,基本就是靠各位大佬们的教程和百度照葫芦画瓢,因此还是在这里做一个总结,防止后来继续踩相同的坑,同时也想告诉各位,创建博客,不需要任何的计算机知识,和我一样的小白是完全可以创建出自己的博客的。

在此感谢Fomalhaut大佬的教程,讲的非常详细!

一、前置条件

1.node.js

官方网站下载即可:https://nodejs.org/zh-cn/
检测是否安装成功:在cmd中执行 node -vnpm -v ,出现版本号即说明安装成功。

2.Git

官方网站下载即可:https://git-scm.com/
由于官网下载太慢,可以通过淘宝的开源镜像下载:https://registry.npmmirror.com/binary.html?path=git-for-windows/v2.36.1.windows.1/
检测是否安装成功:在cmd中执行 git --version ,出现版本号即说明安装成功。

3.Github

官方网站注册即可:https://github.com/
在账号创建成功后,新建仓库,仓库名称填写为 {username}.github.io,其中{username}为自己GitHub账号的用户名,仓库类型选择公共(免费),勾选添加README
以后博客的相关文件都会上传至这个仓库内,这也可以检测你的博客是否更新成功。
其实不使用GitHub也是可以的,不过作为一个小白,先把github设置搞明白即可,以后可以进行更换。


二、安装hexo

1.添加国内淘宝镜像(加快下载速度)

在cmd中执行:

1
npm config set registry https://registry.npm.taobao.org

2.git base 控制台

在一个合适的文件夹内右键,点击 Git Bash Here,即可出现git的控制台,要注意下面的操作全部在控制台内操作,而不是cmd了。

3.安装hexo

npm i hexo-cli -g

检测是否安装成功:hexo -v,出现版本号即说明安装成功。

三、连接GitHub和hexo

1.输入GitHub用户名

git config --global user.name {username}
其中{username}为自己GitHub账号的用户名。
一个小坑:GitHub的用户名和昵称一定要区分开!

2.输入GitHub注册邮箱

git config --global user.email {useremail}
其中{useremail}为自己GitHub账号的注册邮箱。

3.生成密钥

SSH key:ssh-keygen -t rsa -C {useremail}
其中{useremail}为自己GitHub账号的注册邮箱。

4.查看SSH key

进入路径C:\Users\Astar.ssh\id_rsa.pub,右键记事本打开该pub文件,可以看到以ssh-rsa为首的一大段内容,复制下来。
以上也可在Git Bash控制台内输入 cat ~/.ssh/id_rsa.pub,也可以看到相同的内容。

5.在Github内创建密钥

打开GitHub,进入设置——SSH and GPG keys,新建一个SSH,名称随意,下一栏中的内容粘贴为上一步中输出的内容。

6.检测是否连接成功

ssh -T git@github.com
如果出现以下内容:

1
Are you sure you want to continue connecting(yes/no)?

输入 yes即可,随后出现自己的用户名即说明连接成功。

7.无法连接至Github的解决方案

在上一步中,如果出现以下内容:

1
ssh: connect to host github.com port 22: Connection timed out

说明我们无法与Github建立连接,于是我们可以通过更换端口的方式解决。
在连接Github之前,进入路径C:\Users\Astar.ssh\id_rsa.pub,新建config文本文档,输入以下内容:

1
2
3
4
5
6
Host github.com
User {usermail}
Hostname ssh.github.com
PreferredAuthentications publickey
IdentityFile ~/.ssh/id_rsa
Port 443

其中{useremail}为自己GitHub账号的注册邮箱。


四、创建博客文件

1.初始化文件夹

hexo init

2.安装组件

npm install hexo-deployer-git --save

3.修改本地_config.yml文件

使用记事本打开该文件,在deploy行修改以下内容:

1
2
3
4
deploy:
type: git
repo: git@github.com:{useremail}/{useremail}.github.io.git
branch: main

以下为旧版写法,现已不再使用:
旧版写法,已废弃
1
2
3
4
deploy:
type: git
repo: git@github.com/{useremail}/{useremail}.github.io
branch: main

上面可以说是踩过的最大的一个坑了。首先,冒号后面必须有一个空格;其次,repo写法的不同是因为旧版本hexo2.x版本的写法在3.x中已经不适用了;最后,可能有的人新建的分支默认为master(即branch后面为master而非main),以前GitHub创建仓库时都是默认的master,但是因为master有着“主宰、暴君”的含义,所以GitHub就将默认改成了main

4.清除本地静态页面

hexo clean

5.生成本地静态页面

hexo generatehexo g

6.本地预览页面

hexo serverhexo s,随后在浏览器打开本地静态页面:http://localhost:4000/
按下 ctrl+C可结束本地预览。

7.上传本地静态页面

hexo deployhexo d
打开自己的博客地址 {username}.github.io,大功告成!

2024/2/1更新 使用hexo-git-backup备份博客文件

1.安装插件

$ npm install hexo-git-backup --save

2.插件配置

在博客根目录下的_config.yml文件中添加以下内容:

1
2
3
4
5
6
backup:
type: git
theme: butterfly
message: Back up my www.blackpumpkin.site blog
repository:
# github: git@github.com:xxx/xxx.git,branchName

参数解释:
theme:需要备份的主题名称
message:自定义提交信息
repository:仓库名,注意仓库地址后面要添加一个分支名,格式为托管平台: 仓库地址,分支名

3.提交、备份

hexo backup

一键四连:

hexo clean && hexo g && hexo d && hexo b

4.如何恢复博客

下载或者 clone 前文所述备份的博客到本地任意位置,复制备份文件夹内所有文件到新安装的博客目录下,重复文件保留备份的即可。