搭建GitHubPage & Hexo
前言
本文详细介绍了如何利用Github Pages与Hexo搭建个人博客
Github Pages
Github Pages 是由 Github 免费提供的一个托管在 Github 上的个人网站,可以用来搭建轻量级的个人博客,并且具有丰富的 DIY 特征。可以使用自己的域名;选择合适的主题;使用插件等,并且可以完全不用担心环境搭建、系统维护等问题。
根据 GitHub 官方使用建议和限制,每个项目的大小不要超过 1GB,每小时不超过 10 次版本更新;每个月带宽使用上限为 100GB。
Hexo
Hexo 是一个快速、简洁并且高效的博客框架。Hexo 使用Markdown解析文章,在几秒内可以生产静态网页,并且有丰富的主题可以选择。
准备工作
安装 Git
Git是一个开源的分布式版本控制系统。此处使用 Git 用来将本地生成的静态文件推送到远程仓库中,并且也可以用来控制系统版本。
检查系统中是否安装了 Git,可以使用以下命令:
1 | git -version |
安装 Node.js
要使用 Hexo,需要先安装Node.js的环境,根据电脑环境下载相应的版本后,使用默认安装即可。
检查 Node.js 是否安装成功,可以使用一下命令:
1 | node -v |
Ps:NPM 是跟随 Node.js 一同安装的包管理工具,类似于 Python 的 pip,并且为了增加下载速度,可以切换至淘宝源
1 | npm config set registry https://registry.npm.taobao.org |
安装 Hexo
完成以上准备工作后,可以安装 Hexo。
Hexo 的安装分为全局安装和局部安装,此处我采用了局部安装,将目录切换到 blog 根目录,执行:
1 | npm install hexo |
以后再使用时,可以以以下方式执行:
1 | npx hexo <command> |
注册 GitHub 账号、新建仓库与主页
在GitHub注册账号,新建一个仓库,项目名称必须为**[yourname].github.io**
配置 SSH 秘钥
配置 SSH 秘钥,实现本地仓库与 GitHub 代码块的同步。在命令行工具中,输入以下代码:
1 | ssh-keygen -t rsa -C "your email@example.com" |
id_rsa 是私钥,不能泄露给别人;id_rsa.pub 是公钥,将其内容复制,添加到 GitHub 中。
使用如下代码,测试 Git 连通性
1 | ssh -T git@github.com |
也可以配置你的 Git 个人信息
1 | git config --global user.name "此处填你的用户名" |
建站
完成好以上准备工作后,便可以开始建站工作。执行一下命令,初始化 Hexo。
1 | hexo init <folder> # 初始化Hexo |
新建完成后,文件夹出现以下目录结构:
1 | . |
文件夹的具体含义可以查看Hexo 说明文档
网站搭建工作基本完成,可以使用hexo s
命令本地运行,查看效果。
配置 deploy
打开 hexo 的_config.yml 文件,找到 deploy 关键字,如下修改:
1 | deploy: |
部署
1 | hexo clean # 清空静态文件 |
个性化设计
关于网站的大部分设置可以在 hexo 文件夹下的_config.yml 中配置
同时,hexo 主题也提供了大量的有特点的主题,可以寻找并应用
使用 git 安装主题时,可以采用 git submodule [主题地址] themes/[文件夹]
hexo 的其他使用方法可以访问查看其文档hexo 文档
我使用的主题是 butterfly,具体配置方法可查看butterfly 文档
更多美化方法可以参考Hexo 博客主题个性化
永久链接
-
安装插件
1
npm install hexo-abbrlink --save
-
修改 config.yml 文件中的 permalink
1
2
3permalink: article/:abbrlink/
alg -- Algorithm (currently support crc16 and crc32, which crc16 is default)
rep -- Represent (the generated link could be presented in hex or dec value)
备份
hexo 部署时会把.deploy_git
push 到 GitHub 仓库中,为了方便备份博客的原文件夹中的内容
在 blog 根目录下初始化一个仓库,通过配置.gitignore
可以控制追踪的文件
1 | . |
可以将其与 GitHub 仓库连接,在 GitHub 上备份 blog 文件
再其他电脑上恢复时,只需要安装 Node.js、Git,在 GitHub clone 下来之后,npm install
即可