用GitHub和Hexo搭建个人博客

很久前就想利用GitHub来搭建一个个人博客了,今天就琢磨了一下搭建方法,在这里写出来以供他人参考~

一、简介

Hexo: Hexo 是一款基于Node.js、快速、简洁且高效的博客框架,Hexo 使用 Markdown解析文章,在几秒内,即可利用各式主题生成静态网页

NodeJs Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,Node.js 使用了一个事件驱动、非阻塞式 I/O 的模型,使其轻量又高效。Node.js 的包管理器 npm,是全球最大的开源库生态系统

Git Git是一个开源的分布式版本控制系统,用以有效、高速的处理从很小到非常大的项目版本管理

GitHub GitHub是一个代码托管平台和开发者社区,开发者可以在GitHub上创建自己的开源项目并与其他开发者协作编码

二、准备工作

这里需要先安装两个软件 (1)Git Git官网下载地址:https://git-scm.com/download/ 安装与使用教程可以参考我的另一篇文章:Git的使用教程

(2)NodeJS 官网下载地址:https://nodejs.org/en/

这里写图片描述

我的软件安装路径是:C:\nodejs

一路点击下一步即可

这里写图片描述

安装完成后检查是否有自动添加了环境变量,没有的话需要手动设置

这里写图片描述

(3)注册一个GitHub账号,这个不必多说吧~

三、本地部署

我的电脑是Windows平台 打开CMD,即命令提示符,进入NodeJS的安装目录

这里写图片描述

使用命令行安装Hexo,这个耗时可能会稍微长点,需要等等

npm install -g hexo

这里写图片描述

创建一个文件夹命名为blog并打开 名字可以随个人喜好取,不过最好只包含英文字符

mkdir blog && cd blog

这里写图片描述

然后再依次执行以下命令

初始化

hexo init

安装依赖包

npm install

生成静态页面

hexo g

启动本地服务,查看效果

hexo s

这里写图片描述

这里写图片描述

此时博客应该已经搭建成功了,可以看到CMD提示说Hexo已经运行在“http://localhost:4000/”了,查看效果

这里写图片描述

可以看到网站样式还是挺好的,当然,此时网站还只是部署在本地

打开\nodejs\blog\source\_posts文件夹,可以看到一个hello-world.md文件,即网站上显示的文章,用Markdown格式书写

四、部署到GitHub

首先,登录你的GitHub账号,新建一个仓库

我的GitHub账户是:https://github.com/leavesC

这里我新注册了一个GitHub账户用来演示,名为czyhexo

仓库的名字的格式必须为:用户名+.github.io

这里写图片描述

点击按钮创建,选中Settings进入设置界面 选中“启动页面自动生成器”按钮

这里写图片描述

设置页面信息

这里写图片描述

选择主题然后发布即可

这里写图片描述

此时,访问https://czyhexo.github.io/,即可看到刚才发布的文章了

这里写图片描述

五、推送本地文件

回到刚才建立的仓库界面,复制推送地址:https://github.com/czyhexo/czyhexo.github.io.git

这里写图片描述

进入C:\nodejs\blog文件夹,打开_config.yml文件

修改最下边一行,并添加两行命令,注意之间的空格

这里写图片描述

回到CMD窗口,如果之前的状态还没退出,可以按ctrl+c,输入y确定退出

依次输入以下命令

npm install hexo-deployer-git --save

重新生成静态页面

hexo g

清理并推送到GitHub

hexo clean && hexo d

注意,此处需要你电脑本地的Git已经与GitHub账户绑定,这样才有权限可以推送文件,绑定方法可以参考我上边所说的Git教程

这样,重新访问https://github.com/czyhexo/czyhexo.github.io.git,就可以看到页面已经与本地主题一样了,且文章也是相同的

六、更换主题

我要使用的主题在GitHub的地址是:https://github.com/litten/hexo-theme-yilia

打开主题文件夹:C:\nodejs\blog\themes 打开Git,下载该主题

git clone https://github.com/litten/hexo-theme-yilia.git

等下载完成后,可以看到文件夹下多了个文件,将之重命名为:yilia

这里写图片描述

修改C:\nodejs\blog文件夹下的_config.yml文件,将theme值修改为:yilia,注意空格,保存退出

这里写图片描述

再依次执行以下命令

重新生成页面

hexo g

推送到GitHub

hexo d

以上更换主题的修改是在我有在使用的GitHub上,所以访问的地址是:https://initobject.github.io/ 效果如下:

这里写图片描述

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏C#

DotNet加密方式解析--非对称加密

    新年新气象,也希望新年可以挣大钱。不管今年年底会不会跟去年一样,满怀抱负却又壮志未酬。(不过没事,我已为各位卜上一卦,卦象显示各位都能挣钱...)...

4928
来自专栏大内老A

The .NET of Tomorrow

Ed Charbeneau(http://developer.telerik.com/featured/the-net-of-tomorrow/) Exciti...

31810
来自专栏pangguoming

Spring Boot集成JasperReports生成PDF文档

由于工作需要,要实现后端根据模板动态填充数据生成PDF文档,通过技术选型,使用Ireport5.6来设计模板,结合JasperReports5.6工具库来调用渲...

1.2K7
来自专栏java 成神之路

使用 NIO 实现 echo 服务器

4677
来自专栏张善友的专栏

Mix 10 上的asp.net mvc 2的相关Session

Beyond File | New Company: From Cheesy Sample to Social Platform Scott Hansel...

2587
来自专栏一个会写诗的程序员的博客

Spring Reactor 项目核心库Reactor Core

Non-Blocking Reactive Streams Foundation for the JVM both implementing a Reactiv...

2182
来自专栏跟着阿笨一起玩NET

c#实现打印功能

2792
来自专栏张善友的专栏

Miguel de Icaza 细说 Mix 07大会上的Silverlight和DLR

Mono之父Miguel de Icaza 详细报道微软Mix 07大会上的Silverlight和DLR ,上面还谈到了Mono and Silverligh...

2717
来自专栏一个爱瞎折腾的程序猿

sqlserver使用存储过程跟踪SQL

USE [master] GO /****** Object: StoredProcedure [dbo].[sp_perfworkload_trace_s...

2070
来自专栏杨龙飞前端

scrollto 到指定位置

2514

扫码关注云+社区