huazi

huazi

使用hexo+github建个人博客

前言#

准备开一个博客,记录一下自己平时碰到的一些问题,也可以供以后进行翻阅,查找定位。
既然是这样那就需要考虑怎么建博客了,之前大学的时候 CSDN 和博客园都有账号,可是只是零零星星写过一点东西,就放在那了。也自己买域名和 vps 用 wordpress 搭过一个博客,这个运行了接近两年,直到我工作一年后才停了。前期的目的是写点技术博客,可是当时学生党为了盈利,慢慢运营成了电影资源下载网站,收益还可以。期间为了改网站模板也自己学了点 php,也算有点收获。工作之后就没怎么管过了,考虑到版权问题以及对个人成长的没有多少帮助就给关了。当时关还是有点小不舍的,毕竟自己一手建的站,运营了那么久。啰里吧嗦那么多就是想说其实是对技术博客还是有点情怀的,于是才有了现在想自己开博客,写点技术文章的想法。
好了废话不多说,步入正题。
** 本片文章配置是在 Mac 完成的,其他系统版本应该也差不多 **

用 Github pages 创建个人站#

我想作为程序员你应该对 GitHub 不陌生。GitHub 提供了 Github Pages 功能,我们可以用 GitHub pages 创建自己的个人站。

Github Pages 是面向用户、组织和项目开放的公共静态页面搭建托管服务,站点可以被免费托管在 Github 上,你可以选择使用 Github Pages 默认提供的域名 github.io 或者自定义域名来发布站点。

  1. 登录 GitHub 账户,点击右上角 + 号,选择 New repository, 创建一个新的仓库,用于存放你的网站代码。
  2. 按照要求填写仓库名,要使用默认的域名 github.io 的话仓库名就要以你的用户名命名,命名规则如下username.github.io, 然后选择公开,点击 Create Repository, 创建仓库完成。
    至此我们在 GitHub 上有了一个代码仓库,等我们在本地写好代码就可以部署上去了。

安装 Git#

最简单的方法,去Git 官网下载安装,也可以通过以下途径安装

Linux#

Debian 或 Ubuntu Linux,通过一条sudo apt-get install git就可以直接完成 Git 的安装。

Mac OS 安装#

安装 homebrew,然后通过 homebrew 安装 Git,具体方法请参考 homebrew 的文档:http://brew.sh/

Windows#

推荐去官网下载,安装完后在命令行下输入git version检查是否安装成功。

使用 Hexo 搭建博客#

  1. 安装 Node
    hexo 是一款基于 Node.js 的静态博客框架,所以我们先要安装 node。
    • 去 node官网下载安装包安装。
    • 有个国内墙的原因,可能上不去官网就算上去了也很慢,推荐使用 homebrew 安装 node
    • 在 bash 命令下输入 node -v 如果显示版本号说明安装成功。
  2. 安装 hexo
    安装完 node 就可以用 npm 去安装 hexo 了,hexo 官网

NPM 是随同 NodeJS 一起安装的包管理工具,能解决 NodeJS 代码部署上的很多问题,由于新版的 nodejs 已经集成了 npm,所以之前 npm 也一并安装好了。同样可以通过输入 "npm -v" 来测试是否成功安装。

执行以下命令安装 hexo:
npm install hexo-cli -g #-g表示全局安装, npm默认为当前项目安装
然后执行:
hexo version
如果出现版本号说明安装成功。如果报错,尝试用下面的命令安装
npm install hexo --no-optional
然后使用以下命令:
hexo init blog //执行初始化命令到指定的目录,这里的目录是hexo文件夹
cd blog
npm install
hexo generate //在当前目录下生成静态网页
hexo server // 启动本地服务
在浏览器输入 http://localhost:4000 就可以看到效果,到此 hexo 生成静态网站就已经完成。

部署到 Github#

进入你的博客目录,找到配置文件_config.yml 修改如下信息

deploy:
  type: git
  repo: [email protected]:username/username.github.io.git
  branch: master

这里的 username 是之前注册的 github 的用户名
现在可以执行:hexo d部署到 github 了,不过有时候会出现问题,如果报如下错误

fatal: Could not read from remote repository.
Please make sure you have the correct access rights
and the repository exists.

说明连接不到远程仓库。一般是需要配置你电脑的 SSH Key

为什么 GitHub 需要 SSH Key 呢?因为 GitHub 需要识别出你推送的提交确实是你推送的,而不是别人冒充的,而 Git 支持 SSH 协议,所以,GitHub 只要知道了你的公钥,就可以确认只有你自己才能推送。
当然,GitHub 允许你添加多个 Key。假定你有若干电脑,你一会儿在公司提交,一会儿在家里提交,只要把每台电脑的 Key 都添加到 GitHub,就可以在每台电脑上往 GitHub 推送了。

关于 SSH 的原理可以通过阮一峰老师的一篇文章了解一下:
http://www.ruanyifeng.com/blog/2011/12/ssh_remote_login.html
配置 SSH Key 的方法可以参考 GitHub 官网的教程:
https://help.github.com/articles/generating-an-ssh-key/
按步骤测试好之后就可以使用hexo d部署了。部署完之后在浏览器输入:http://username.github.io/ 就可以看到效果了。

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。