1. 前言
耗时两天搭建了一个个人博客:adgnn的个人博客
本博客是搭建在github page上的,没有购买个人域名,所以不需要花钱就可以搭建一个属于自己的博客。
本博客仅说明WINDOWS环境下的博客搭建
2. 准备 - 需要下载的工具
Git (官网点击Download即可下载,安装完后就可以使用Git Bash命令行工具进行操作。)
NodeJS (LTS栏里点击Windows即可下载)
VPN(最好在能够访问外网的情况下安装,可忽略)
notepad++(更好的文本/代码编辑软件,可忽略)
3. 安装hexo
-
在某个地方创建一个文件夹(如G:\blog\)(名字随意)
-
右键这个文件夹,选择Git Bash Here
-
在打开的命令行窗口内输入命令安装hexo
npm i -g hexo-cli
- 初始化hexo于myblog文件夹
hexo init myblog
- myblog自己想取什么名字都行
- 将命令行窗口的地址改为刚才创建的myblog文件夹
cd myblog
- 安装
npm i
4. Github创建个人仓库
网站链接:Github
- 注册Github帐号(记住你的用户名和注册用的邮箱,之后要用)
- 登录
- 点击New repository
- 创建一个和自己用户名相同的仓库,即用户名.github.io (如本人用户名是adgnn,则创建名为adgnn.github.io的仓库)
- 点Create repository
5. 生成SSH并添加到Github
SSH是你电脑Git和Github连接的钥匙,请按如下步骤配置。
- 回到Git Bash窗口,输入代码表示你的用户名和注册邮箱
git config --global user.name "yourname"
git config --global user.email "youremail"
- 双引号""中的yourname替换成你的用户名
- 双引号""中的youremail替换成你的注册邮箱
- 创建SSH
ssh-keygen -t rsa -C "youremail"
-
双引号""中的youremail替换成你的注册邮箱
-
之后弹出的信息不需要输入任何东西,一直回车直到命令执行完毕。
-
执行完毕后,在命令行窗口里找到.ssh的文件夹,打开“此电脑”(或资源管理器),输入这个地址,回车
-
用记事本打开id_rsa.pub备用
-
打开Github网页,点右上角自己的头像—settings—找到SSH设置选项,点击New SSH Key,把你的id_rsa.pub的信息复制进去
-
在Git Bash检查是否成功
ssh -T git@github.com
6. 安装主题文件
本人的博客使用的主题是Yilia,简洁清新,功能实用。本篇以Yilia的安装为例。
- Git Bash输入
git clone https://github.com/litten/hexo-theme-yilia.git themes/yilia
- 这个命令的功能是将github上的yilia项目clone(克隆)到你的themes目录下面
- 如果你觉得Git Bash的下载太慢,可以点这里 打开项目页面, 点击Clone or download ,Download ZIP,将下载好的ZIP文件里的hexo-theme-yilia-master文件夹解压到\myblog\themes\下,并改名为yilia。
7. 配置_config.yml
安装好主题文件后,我们的myblog目录下一共会有两个_config.yml
一个在\myblog\下,另一个在\myblog\themes\yilia\下
为了避免混淆,将前者称为全局配置文件,后者称为主题配置文件。
我们绝大部分自定义内容都是在_config.yml里修改的。
- 用记事本分别打开全局配置文件和主题配置文件
- 下面是我的全局配置文件,请参考我的配置文件对自己的配置文件修改。(可参考官方说明)(请将所有和本作者有关的内容照例改成自己的)
# Hexo Configuration
## Docs: https://hexo.io/docs/configuration.html
## Source: https://github.com/hexojs/hexo/
# Site
title: adgnn的个人博客
subtitle:
description: adgnn的个人博客
keywords: blog, 博客
author: adgnn
language: zh-CN
timezone:
# URL
## If your site is put in a subdirectory, set url as 'http://yoursite.com/child' and root as '/child/'
url: https://adgnn.github.io
root