Hexo搭建github博客

hexo官方网站

一.系统环境配置:

要使用Hexo,需要在你的系统中支持Nodejs以及Git,如果还没有,那就开始安装吧!

1.安装 node.js
​ 下载地址 node.js
​ 直接双击下载下来的msi文件,一路下一步就ok了,安装完之后调出命令行或者node命令输入终端,输入node -v看到版本信息就表明安装成功了。如果不会就参考node.js安装

2.安装 git
​ 下载地址 git下载
​ 直接双击下载下来的git安装程序,同node安装,安装完之后右键发现多了两个Git GUI Here 、Git Bash Here,点击后者,然后输入git --version出现版本信息就表明安装成功了。

3.注册 github账号
​ github 官网 github

二.搭建个人博客

安装 hexo:

  • 1.更新镜像
    参考 2018 mac终端更新淘宝npm镜像

  • 2. 安装 hexo 命令

    $ sudo cnpm install -g hexo-cli
    

    在这里会有 一段时间等待,请稍等

hexo安装成功
  • 3. 安装个人博客
    进入到 你本地的博客存放路径
    # 进入本地博客存放目录
    $ cd /github/blog

    # 初始化 个人博客
    $ hexo init #等待一段时间
hexo初始化成功

初始化完成以后,会生成以下目录:


目录结构

#生成静态网页
$ hexo g
# 启动服务器。默认情况下,访问网址为: http://localhost:4000/   
$ hexo s

执行完以后,你就可以去打开 http://localhost:4000/ 看本地版的博客效果了。


三.修改主题:

next官网
这里有一些常见的hexo主题,读者可以挑选自己喜欢的安装。

个人比较喜欢 next 这款主题。基本呢就是这个效果个人博客

清除缓存文件 (db.json) 和已生成的静态文件 (public)。

$ hexo clean

下载主题

$ git clone https://github.com/iissnan/hexo-theme-next.git themes/next

启动主题:

1. 修改Hexo目录下的_config.yml配置文件中的theme属性,将其设置为next

theme : next

2.生成静态页面

$ hexo clean 
# 生成静态页面
$ hexo g

# 启动服务器
$ hexo s

打开 http://localhost:4000/ 查看静态页面.

四.部署到GitHub上:

修改站点根目录下 _config.yml 文件,在最后添加

# Deployment
## Docs: https://hexo.io/docs/deployment.html
deploy:
  type: git
  repo: [email protected]:honkerSK/honkerSK.github.io.git  #这里填你自己的github地址
  branch: master

然后在命令行中执行

#注意需要提前安装一个扩展:
$ cnpm install hexo-deployer-git --save

#部署网站, 提交到github
$ hexo d

到此呢,你的博客基本就搭建完毕了。


博客外部插件:

这个是个人博客的第三方插件,一个博客搜索插件,一个评论插件。

搜索插件 algolia:

    1. 注册账号 algolia
    1. 登陆,进去创建一个索引,如图:


      new index
    1. 创建一个api key,并赋予增删的权限,如图所示:


      new api key

    并赋予 add records,delete recourds,list indices,delete index 4个权限,如图所示:


    权限
    1. 然后编辑配置文件,首先是 next 目录下的 _config.yml:
    将 # Algolia Search 下的
    algolia_search:
    enable: true  ---改为true
    
    1. 然后修改 站点目录下的 _config.yml:
      最后增加:
    #站内搜索:
    algolia:
    applicationID: 'ZMNZVONxxx'   #Application ID 对应的值
    apiKey: 'a3b6cc86714b99e25e614968b07xxxxx'   # 这里填你新建的 api key 对应的值
    indexName: 'bigDataBeginner'  #这里填你  创建的索引名称
    chunkSize: 5000    #这个值不动
    
    1. 执行命令,将文章列表同步到 algolia:
    $ export HEXO_ALGOLIA_INDEXING_KEY=a3b6cc86714b99e25e614968b073f442   # key值对于你新建 api key的值
    $ hexo algolia
    

    如果报错 执行 hexo clean 后,重试。然后预览。

评论插件 来必力:

    1. 注册账号来必力
    1. 登陆,绑定自己博客地址。如图所示:


      来必力
    1. 复制 自己地址对应的id值。如图所示:


      复制id
    1. 编辑 next 目录下的 _config.yml 配置文件:
      修改下面一行:
    livere_uid: "MTAyMC8zMjg2xxxxxx"  ---这里填入你复制的id值
    

    清空缓存,重新生成静态页面预览就看到效果了。

Hexo常用命令:

$ hexo clean 清除本地缓存
$ hexo g # 或者hexo generate,生成静态页面
$ hexo s # 或者hexo server,可以在http://localhost:4000/ 查看
$ hexo new "postName" #新建文章
$ hexo new page "pageName" #新建页面
$ hexo d  # 代码同步到github上

好了,本文到此结束。


Bug解决

Error: [email protected]: Permission denied (publickey).
fatal: Could not read from remote repository.

Please make sure you have the correct access rights
and the repository exists.

问题: 秘钥设置不对的问题。

1)首先检查有没有在GitHub的https://github.com/settings/keys上添加你本机的SSH key。注意换了电脑是要重新添加的,每台都不一样。

2)添加SSH key的方法:
在用户主目录下,看看有没有.ssh目录,如果有,再看看这个目录下有没有id_rsa和id_rsa.pub这两个文件,如果已经有了,可直接跳到下一步。如果没有,打开Shell(Windows下打开Git Bash),创建SSH Key:

$ ssh-keygen -t rsa -C "[email protected]"

你需要把邮件地址换成你自己的邮件地址,然后一路回车,使用默认值即可。

3)如果一切顺利的话,可以在用户主目录里找到.ssh目录,里面有id_rsa和id_rsa.pub两个文件,这两个就是SSH Key的秘钥对,id_rsa是私钥,不能泄露出去,id_rsa.pub是公钥,可以放心地告诉任何人。

4)登陆GitHub,打开“Account settings”,“SSH Keys”页面:

5)然后,点“Add SSH Key”,填上任意Title,在Key文本框里粘贴id_rsa.pub文件的内容:

点“Add Key”,你就应该看到已经添加的Key:

没有解决

如果添加了还是出现这个问题,那么问题大概率就定位在了你本机的这个git仓库并没有和这个SSH key 关联上。

用下述方法解决:

ssh-add "你的 id-rsa 文件地址"
  • 注意这里ssh-add后面填的是私钥地址,如mac电脑是 /Users/用户名/.ssh/id_rsa

add之后可以用

$ ssh [email protected]

验证是不是添加成功。

有时候你GitHub仓库初始化时候带了Readme或其他文件,推送之前需要先git pull 拉下来,会报错误:

* branch master  -> FETCH_HEAD  fatal: 拒绝合并无关的历史

解决方法是在git pull时加上–allow-unrelated-histories,如下:

git pull origin master --allow-unrelated-histories

这样应该就可以正常push了。

你可能感兴趣的:(Hexo搭建github博客)