Mac上搭建基于GitHub的Hexo博客(继)

很早就想搭建一个属于自己的博客,一次一次的尝试都失败了,今天有幸找到博主的博客(与佳期的个人博客(gonghonglou.com))然后一步一步的跟着操作,终于搭建了属于自己的博客,除了博主的一些坑,自己也踩了不少坑,特地在这里在博主的基础上加上自己踩得坑。

环境配置

Hexo官网上本就有对Hexo安装及使用的详细介绍,可以按照上边的步骤一步一步安装。这里来讲述自己安装的亲身步骤。

1.Node.js

用来生成静态页面。移步Node.js官网,下载v8.2.1 Current 一路安装即可。

2.Git

用来将本地Hexo内容提交到Github上。Xcode自带Git,这里不再赘述。如果没有Xcode可以参考Hexo官网上的安装方法。

(这里我要说一下我在根据Hexo官网安装Hexo的时候,到了Install Node.js这一步的时候,我敲第一条命令的时候没问题)

//第一条命令
$ curl -o- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash

当我开始敲第二条命令的时候就出现了问题

//第二条命令
$  wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.2/install.sh | bash

终端提示我 -bash: wget: command not found
然后使用下边的命令安装wget,这样找不到wget的错误就不会再提示了。

$  brew install wget

解决完wget的问题之后我再执行了第二条命令,然后执行第三条命令:

//第三条命令
$  nvm install stable

没错,问题又来了,提示我-bash: nvm: command not found,又掉坑里了,我能怎么办,我也很绝望啊,然后解决办法是安装nvm,命令如下:

$  brew install nvm

等上述命令执行完之后,我再执行第三条命令的时候发现还是提示-bash: nvm: command not found
额...........居然还没从坑里爬出来,然后我找到了如下的方法,终于从这个坑里爬出来了,具体为什么这么操作,我也不是太清楚。
按照下边的命令逐个执行

$  source ~/.nvm/nvm.sh
$  source ~/.profile
$  source ~/.bashrc

当上述命令执行完毕之后,再执行第三条命令的时候就完美解决了问题,终于从坑里爬出来了。

接下来执行下边的命令:

$  sudo npm install -g hexo

输入管理员密码(Mac登录密码)即开始安装 (sudo:linux系统管理指令 -g:全局安装)

注意坑一:Hexo官网上的安装命令是$ npm install -g hexo-cli,安装时不要忘记前面加上sudo,否则会因为权限问题报错。

初始化

终端cd到一个你选定的目录,执行hexo init命令:

$  hexo init blog

blog是你建立的文件夹名称。cd到blog文件夹下,执行如下命令,安装npm:

$  npm install

执行如下命令,开启hexo服务器:

$  hexo s

此时,浏览器中打开网址http://localhost:4000,能看到如下页面:

23123.png

本地设置好后,接下来开始关联Github。

关联Github

1.创建仓储

登录你的Github帐号,新建仓库,名为用户名.github.io固定写法,如jerry039.github.io即下图中1所示:

8285FC0F-C382-40DA-A0A3-BF0759DF5046.png

本地的blog文件夹下内容为:

_config.yml    
db.json 
node_modules 
package.json
scaffolds
source
themes

终端cd到blog文件夹下,vim打开_config.yml,命令如下:

$  vim _config.yml

打开后往下滑到最后,修改成下边的样子:

deploy:
    type: git
    repository: https://github.com/Jerry039/Jerry039.github.io.git
    branch: master

你需要将repositoryJerry039换成你自己的用户名,地址在上图2位置获取。hexo 3.1.1版本后type:值为git

注意坑二:在配置所有的_config.yml文件时(包括theme中的),在所有的冒号:后边都要加一个空格,否则执行hexo命令会报错,切记 切记

blog文件夹目录下执行生成静态页面命令:

$ hexo generate        或者:hexo g
此时若出现如下报错:
ERROR Local hexo not found in ~/blog
ERROR Try runing: 'npm install hexo --save'
则执行命令:
npm install hexo --save
若无报错,自行忽略此步骤。

再执行配置命令:

$ hexo deploy            或者:hexo d

注意坑三:若执行命令hexo deploy
仍然报错:无法连接git或找不到git,则执行如下命令来安装hexo-deployer-git
$ npm install hexo-deployer-git --save

再次执行hexo generatehexo deploy命令。

若你未关联Github,则执行hexo deploy命令时终端会提示你输入Github的用户名和密码,即

Username for 'https://github.com':
Password for 'https://github.com':

hexo deploy
命令执行成功后,浏览器中打开网址http://Jerry039.github.io(将Jerry039
换成你的用户名)能看到和打开http://localhost:4000
时一样的页面。

为避免每次输入Github用户名和密码的麻烦,可参照第二节方法

2.添加ssh key到Github

1.1.检查SSH keys是否存在Github

执行如下命令,检查SSH keys是否存在。如果有文件id_rsa.pubid_dsa.pub,则直接进入步骤1.3将SSH key添加到Github中,否则进入下一步生成SSH key。

$ ls -al ~/.ssh

1.2.生成新的ssh key

执行如下命令生成public/private rsa key pair,注意将your_email@example.com换成你自己注册Github的邮箱地址。

$ ssh-keygen -t rsa -C "your_email@example.com"

输入完命令之后直接回车。默认会在相应路径下(~/.ssh/id_rsa.pub)生成id_rsaid_rsa.pub两个文件。

1.3.将ssh key添加到Github中

Find前往文件夹~/.ssh/id_rsa.pub打开id_rsa.pub文件,里面的信息即为SSH key,将这些信息复制到Github的Add SSH key页面即可。

进入Github --> Settings --> SSH keys --> add SSH key:

Title里任意添一个标题,将复制的内容粘贴到Key里,点击下方Add key绿色按钮即可。

3.发布文章

终端cd到blog文件夹下,执行如下命令新建文章:

hexo new 'postName'

名为postName.md的文件会建在目录/blog/source/_posts下。你当然可以用vim来编辑文章。我在用MacDown编辑器,支持预览。

文章编辑完成后,终端cd到blog文件夹下,执行如下命令来发布:

hexo generate             //生成静态页面
hexo deploy            //将文章部署到Github

至此,Mac上搭建基于Github的Hexo博客就完成了。接下来就是介绍安装theme主题,添加评论功能和绑定个人域名。

推荐阅读更多精彩内容