利用Github和Hexo搭建个人博客
作为一名开发人员,写技术博客既是一种对知识的巩固,也是一种分享精神。所以有一个自己的技术博客,对于我们技术人员来说,是很nice的一件事。
1、条件
如果要使用github搭建自己的博客系统,需要有一个 Github账号 ,我们可以注册一个账号。其次需要一个 node开发环境(nodejs、npm),因为 Hexo 框架需要使用node环境搭建。
- github账号
- node、npm环境(省略)
- 本地安装了git(省略)
本次我的实验环境:
- MacBook Air m1芯片
- git 2.33.1
- node v16.13.1
- npm 8.1.2
2、注册github账号
相信如果是程序员同学,那一定已经拥有一个自己的github账号了,如果是已经拥有github账号的伙伴们可以直接看 2.2小节 。
2.1 注册账号
github注册账号还是比较简单的,需要一个邮箱就行。但是国内访问会比较慢,所以耐心一点就行,这里略过。
2.2 创建项目
创建项目需要注意的地方是仓库的名字,命名为 你的账号.github.io ,之后个人博客访问的域名就是 https://你的账号.github.io 。
这里我已经创建过,所以提示已经存在。
项目创建好之后,需要本地把我们的项目拉下来,因为博客内容一般都是在本地写好在上传到github的,而且本地还可以启动服务预览博客,以便我们在正式发布之前,调整内容和样式。这里我们使用 git
协议去拉取仓库,就需要配置 ssh key
,因为直接使用账号密码不太安全,相关账号密码需要配置在配置文件。
2.3 配置ssh key
首先连接过的ssh key会在 ~/.ssh
目录下有 xxx.pub文件,就是公钥。但是是首次连接的话,那么就需要配置一下了,如下:
1 | # 1.查看.ssh文件夹,是否有配置过密钥 |
2.4 设置gitbhu pages
找到项目的 Settings -> Pages -> Source
,设置branch和root。
3、搭建Hexo环境
Hexo是一个快速、简介且高效的博客框架,官网:https://hexo.io/zh-cn/ ,可以在网站下学习他的API、文档、插件、主题等。
3.1 搭建环境
注意: 由于mac系统新版本对 /usr/*
做了权限限制,无法写入,所以我们需要修改下默认的npm全局依赖包的位置。
1 | # 0.修改npm全局依赖仓库位置,并设置到环境变量 |
接下来我们搭建hexo环境:
1 | # 1.安装hexo-cli工具(全局) |
3.2 初始化Hexo
我们要使用 hexo
命令初始化一个hexo博客写作环境,相当于是hexo的基本框架:
1 | # 1.将项目拉到本地某个文件夹,我的是 /Users/adu/IdeaProjects/dmaker1993.github.io |
初始化之后的目录结构如下:
1 | . |
3.3 选择主题
经过 3.2步骤 之后,我们就已经搭建好了一个hexo环境,然后就可以写博客了。但是默认的信息比如 博客名称、所有者 等等信息,需要都替换成我们自己的,也就是做一些配置的修改,我们直接修改项目根目录下的 _config.yml
文件, 以下是一些hexo配置信息的修改:
1 | title: 网站标题 |
上述的 theme
就是主题的名字,我们可以到hexo官方提供的列表中选择一个自己喜欢的:https://hexo.io/themes/。我用的是 hexo-theme-melody 这个主题,他的文档也比较全,下面是一些展示:
更多的可以去看看我的博客:https://dmaker1993.github.io/ 。
3.4 主题下载和配置
在搭建的过程中也是直接看的文档,比较简单,如果有什么问题可以给我留言哦。首先下载主题,因为我下载的hexo是最新的,所以我直接使用npm安装。
1)主题下载
1 | npm install hexo-theme-melody |
下载之后,我们就可以在 node_modules
目录下找到这个主题的依赖:
2)设置主题
找到项目跟目录下的 _config.yml
,修改其中的 theme
值为 melody
。
1 | theme: melody # 将主题设置成melody |
3)配置
先安装两个渲染插件:
1 | npm install hexo-renderer-pug hexo-renderer-stylus --save |
然后将 node_modules/hexo-theme-melody/_config.yml
文件复制到项目根目录下,并改名为 _config.melody.yml
,修改其中的一些配置信息,比如我的配置(_config.melody.yml
)是这样的:
1 | # 配置语言的 |
全部的主题配置在这里:https://molunerfinn.com/hexo-theme-melody-doc/zh-Hans/theme-config.html 。
4)测试
都配置好之后,我们就可以看一下效果了,执行如下命令:
1 | # 清理 |
正常是一片 Hello World 的demo文章,这里我们就都配置好了,下面我们就可以开始写博客了。
4、写博客
这个过程大概就是:生成博客文档、填充博客内容、构建博客页面、发布。等待几分钟之后,我们在自己的 github.io 页面中就能够看到了。下面我们看一下具体步骤:
1 | # 1.生成博客文档,主要是生成一些hexo必要的配置 |
这里需要看一下最后一步 发布 过程,第一次如果发布失败,可能需要安装插件 hexo-deployer-git
:
1 | npm install hexo-deployer-git --save |
然后确认下 _config.yml
中git配置是否正确:
1 | deploy: |
以上配置之后,在使用 hexo d
命令发布,等待几分钟,在 您的账号.github.io 中便可以看到内容。
注意:因为发布过程是直接覆盖github内容,所以在写博客之前,先将github内容拉到本地,然后在发布!!!
5、总结
综合以上内容,安装nodejs、npm、hexo,再有一个github账号,我们就可以免费拥有一个自己的博客系统啦~其实搭建的过程中还是会遇到很多困难,但是跟着看文档就都可以解决掉。而且 hexo
和 hexo-theme-melody
文档都支持中文,更方便了,赶紧搞起~
参考:
- https://hexo.io/zh-cn/docs
- https://www.cnblogs.com/liuxianan/p/build-blog-website-by-hexo-github.html
- https://molunerfinn.com/hexo-theme-melody-doc/zh-Hans/quick-start.html
- https://dmaker1993.github.io/
欢迎浏览我的更多文章:一名不愿透露姓名的程序员 或者 https://dmaker1993.github.io
最后:因小的才疏学浅,如有问题,请不吝指出,感谢感谢~