网上关于这个的教程非常多,今天我自己尝试一下,感觉教程讲得非常明白,但自己实践起来总是没有那么的一帆风顺,会遇到这样那样的问题,所以写点东西记下来,以防自己下次再碰到,或者可以及时救出跟我掉进同个坑里的朋友。
什么是Hexo
hexo是一个基于Node.js的静态博客程序,可以方便的生成静态网页托管在github和Heroku上。Hexo更加简单优雅, 而且风格多变, 适合程序员搭建个人博客,而且支持多平台的搭建。
1. 安装Nodejs
nodejs是一个js的框架,因为Hexo依赖于这个框架,所以要使用Hexo必须先安装它。
ubuntu上安装
本人比较懒,一般可以简单安装就不想去麻烦。和一般冉欢类似,在Ubuntu上Node也可以用apt-get安装
$ sudo apt-get install nodejs
$ sudo apt-get install npm
当然也有源码编译安装的方法。
windows用户
用户可以直接用exe文件安装(又是偷懒的办法,哈哈),具体可以参考Nodejs安装
2.安装Hexo
正式安装Hexo
$ sudo npm install -g hexo
初始化
$ hexo init
到这一步,其实Hexo的安装都已经完成了,下面是来显示它的步骤
Hexo设置
$ hexo g #生成静态网页
$ hexo s #运行本地服务器
关于hexo 的命令,和命令的缩写下面会讲。顺利的话会出现
INFO Start processing
INFO Hexo is running at http://localhost:4000/. Press Ctrl+C to stop.
此时说明你已经安装成功了,在浏览器地址栏输上http://localhost:4000就能出现默认主题的博客界面了。
主题更改
我使用的是next主题,大家的评论还是非常不错的。
安装主题
$ hexo clean
$ git clone https://github.com/iissnan/hexo-theme-next themes/next
更新主题
修改Hexo目录下的_config.yml,在theme属性上,将其设置为next,默认是landscape。
$ cd themes/next
$ git pull
$ hexo g
$ hexo s
现在重新打开http://localhost:4000/ ,就发现新的主题安装成功了。
next主题的配置方法作者都非常全,Hexo官方配置教程
hexo 常用命令
1. $ hexo g == hexo generate #生成静态网页
2. $ hexo d == hexo deploy #部署
3. $ hexo s == hexo server #启动服务器
安装配置github
安装git
ubuntu系统一般都自带的git,如果没有可以通过这个命令
sudo apt-get install git
要是不知道有没有安装,也可以在命令行里输入这个安装命令,如果你有安装会告诉你git已经是最新版本了。
windows用户可以在Git官网下载安装就可以。安装完成后出现Git Bash了就说明成功了。
配置github
在命令行里输入
$ git config --global user.name "yourName"
$ git config --global user.eamil "email@example.com"
ubuntu直接在命令行里输入,windows在Git Bash 里输入,其中yourname 是输入你自己的用户名,email@example.com输入你自己的注册邮箱。
创建公钥
输入
ssh-keygen -C 'you email address@gmail.com' -t rsa
这里的C必须大写,之后你可以一直按回车,直到出现
之后会在用户目录 ~/.ssh/ 下建立相应的密钥文件,即 ~/.ssh/id_rsa.pub ,打开该文件,在下面一步有用。
添加公钥
还是在github首页右上角点击头像,选择Settings,然后选择New SSH KEY,把上面一步id_rsa.pub文件的秘钥复制进去就好了。
rsa.png
创建项目仓库
登录Github官网,点击右上角的+,选择New repository。
在页面里输入github账户名.github.io只能这么填,不能改,例如我的是**tofulife.github.io填完后点击Create repository即可。
现在github也配置完了。。。
部署到github
打开hexo 目录下的_config.yml
$ sudo gedit _config.yml
到最底下,改成这样子,注意:后面一定要空格
deploy:
type: git
repository: https://github.com/tofulife/tofulife.github.io.git
branch: master
把其中的tofulfie改成你的username。另外,还需要装个Hexo的插件才能push到git上。
npm install hexo-deployer-get --save
现在你就可以浏览器上输入,yourname.github.io访问的你的博客了。
掉进的坑
网页404
总是会有些坑一直等着你跳。我的git也配置好了,Hexo也能在本地打开,但就是push不到git上,一直显示404。使用
$ hexo d
提示“无法推送一些引用到 'git@github.com:tofulife/tofulife.github.io.git'”其实到现在我也不知道原因。
网上有教程说,不用deploy,直接通过git命令push上去,但是还是提示错误。
后来我用这些命令重新来了一遍
$ hexo clean
$ hexo generate
$ hexo deploy
竟然成功了,现在我知道估计是deploy文件有问题,但是具体什么问题不清楚。如果有“坑友”跟我遇到一样的问题,或者类似的问题,可以试试上面的命令,重新把Hexo部署一般,希望能帮到你。
接下来就是博客的配置了,发现博客有好多东西可以玩,例如,浏览量,评论等,抽时间自己配置完了再写哈!
最后我有参考下面的文章
感谢这样的大神,让我们小白涨姿势。
网友评论
deploy:
type: git
repository: https://github.com/tofulife/tofulife.github.io.git
branch: master
里的 repository 改成: git@github.com:tofulife/tofulife.github.io.git
`https://link.jianshu.com/%E2%80%9Chttps://hexo.io/zh-cn/docs/setup.html%E2%80%9D`
npm install hexo-deployer-get --save
而是npm install hexo-deployer-git --save