Hexo+Nodejs+git快速搭建github.io个人博客
相信你也想拥有属于你自己的个人博客,想快速入门搭建github.io,让我们使用Hexo来快速搭建github.io个人博客
Hexo是一款基于Node.js的静态博客框架,可以方便的生成静态网页托管在GitHub上。相较于jekyll/octopress博客框架来说,Hexo的编译速度更快,搭建步骤也更加简单。
Hexo官网:https://hexo.io
Github官网:https://github.com
需要安装:
安装完成Nodejs和Git后,找到Git文件里的 Git Bash
// 输入以下命令,能显示版本号说明安装成
npm -v
node -v
一. 创建github账号和个人仓库
1.注册github账号:
注册的步骤的就不多赘述了,都是大同小异,照着葫芦画瓢。
2.建立仓库
3.配置SSH KEY
打开之前的 git bash命令窗口
在bash中输入
ssh -key -t rsa -C "邮箱地址"
无脑回车就可以
生成的keys会在bash窗口提示:
Your public key has been saved in xxx/.ssh/id_rsa.pub
找到生成ssh的文件夹
将复制的ssh粘贴到github
测试是否成功
ssh -T git@github.com
如果提示Are you sure you want to continue connecting (yes/no)?,输入yes,然后会看到:
Hi ***! You’ve successfully authenticated, but GitHub does not provide shell access.
看到这个说明SSH配置成功
还需要配置:
//邮箱和用户名不要求是github上的用户名和邮箱账号
git config --global user.name "xxxx"
git config --global user.email "xxx@xxx"
二. 初始化安装Hexo
1.安装Hexo
1/安装hexo本地环境
npm install -g hexo
找一个合适的地方新建文件夹,用于存放,以d盘的hexo为例
在终端中执行命令:
D:\>
$ cd hexo
$ hexo init blog //初始化项目 名为blog 过程中可能要等一些时间
$ cd blog
$ npm insatll // 安装所需要的依赖
$ hexo g #或者 hexo generate // 生成静态文件
$ hexo s #或者 hexo server // 启动 浏览器输入http://localhost:4000 就可以在本地查看了
目录是这样的:
.
├── _config.yml
├── package.json
├── scaffolds
├── source
| ├── _drafts
| └── _posts
└── themes
界面是这样:
2.下载安装主题
一般很少人不会使用默认的主题,毕竟不是怎么好看。。
我们可以去Hexo官网去找我们喜欢的主题。。。链接:
https://Hexo.io/themes,,,找到喜欢的主题可以点去github里复制链接,然后在终端里进入我们的blog/themes目录下,使用命令:
git clone 主题链接的URL.git
打开hexo/blog/_config.yml文件
修改themes: xxx
3.根据主题内的README.md文件配置
三. 写篇文章试试手
新建文章
$ hexo new "name"
该命令会自动在hexo/blog/source/_posts文件夹下创建一个名为name的markdown文件
四. 部署到Github
部署之前可以使用几个命令
$ hexo clean // 清理生成的静态文件
$ hexo g # 或者 hexo generate //生成静态文件 每次更新了文章都要执行这一步再生成静态文件
$ hexo s
可以启动在本地查看自己博客,成功写好了之后就可以推到Github上了,。。。
重要的一步:
在根目录的_config,yml文件中配置
部署之前我们需要安装hexo-deployer-git:
npm install hexo-deployer-git --save
执行部署:
$ hexo g //生成静态文件,每次更新文章都要执行
$ hexo d // 部署上线
五. 绑定域名
绑定可以不绑定也可以,绑定的话你要有一个域名能使用。。可以在阿里云等地方购买。。。我的是在阿里云上购买的
如果不绑定这一步可以不用看
-
购买域名
-
解析域名
设置记录,选择CNAME,记录值都是 你建立的Github仓库的名字(USERNAME.github.io)也可以是A,自行设置。。
关于怎么配置解析我就不详细的讲解了
有两种绑定的方式:
1.第一种方式:
2.第二种方式是:
在你 主题文件夹里source目录下 创建无拓展名的文件 CNAME 里面写上你的域名 (因为当我们使用第一种操作的时候发现Github工程里会出现一个名为CNAME的文件,里面写着域名信息)