如何用hexo+github搭建我的博客

搭建环境node

一、安装 Node.js: https://nodejs.org/en/git

windows下点击连接,下载安装便可;Linux下更加简单,在终端下输入sudo apt-get install nodejs便可。github

二、安装 Git: https://github.com/waylau/git-for-winshell

windows下点击上述连接安装便可;Linux在终端输入sudo apt-get install git便可。npm

详细教程可参考廖雪峰老师的Git教程: https://github.com/waylau/git-for-win。
有人也写了个Git的简易入门教程,连接:Git入门使用指南。windows

本篇教程中不涉及太多Git的操做,所以无须观看Git相关教程也可轻松完成搭建。浏览器

三、安装完成后,在开始菜单里找到“Git”->“Git Bash”,按下图设置,名称和邮箱是Github上的。缓存

注意,发现出现警告服务器

npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.1.3 (node_modules\fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.1.3: wanted {"os":"darwin","arch":"any"} (current: {"os":"win32","arch":"x64"})

缘由:这些语句不用管它,由于 fsevent是mac osx系统的,在win或者Linux下使用了 因此会有警告,忽略便可。hexo

四、安装Hexo。全部必备的应用程序安装完成后,便可使用 npm安装Hexo。

$ npm install -g hexo-cli

至此,本地环境已经搭建完成。接着咱们配置一下GitHub,主要操做为建立博客仓库。

配置Github

首先注册、登陆 https://github.com/ ,其中本身的Username很重要(以后的建立仓库以及博客github.io域名会用到)。

而后右上角选择 Create a new repository: https://github.com/new

其中仓库名称Repository name一项填写格式为:yourname.github.io (yourname与你的注册用户名一致,好比个人就是hitergelei.github.io,这个就是我是博客的域名了)

仓库建立完成后,开始生成添加秘钥。
在终端(Windows:cmd/Linux:Terminal)下输入:

ssh-keygen -t rsa -C "Github的注册邮箱地址"

一路Enter过来就好,待秘钥生成完毕,会获得两个文件id_rsaid_rsa.pub,用任意文本编辑器打开id_rsa.pubCtrl + a复制里面的全部内容,

而后进入
https://github.com/settings/ssh

点击New SSH key

将复制的内容粘贴到Key的输入框,Title的内容能够随意(好比Administrator-Windows10),点击Add SSH key按钮便可。

本地环境安装了,远程的GitHub仓库也有了,此时咱们能够专心在本地搭建博客啦。

初始化博客

在电脑e盘(本身随意)目录下新建文件夹Myblog(从我运行Git的终端其实能够看出我早已经建好了一个,不过不要紧),进入Myblog,按住Shift键点击鼠标右键,点击“在此处打开命令窗口(个人是powershell窗口)”:

输入:

hexo init blog

根据下载速度,须要必定时间完成。

成功提示:

INFO Start blogging with Hexo!

由于你初始化hexo以后source—>_posts目录下自带一篇hello world文章,

因此直接执行以下命令:  

    $ hexo generate
    # 启动本地服务器
    $ hexo server
    # 在浏览器输入 http://localhost:4000/就能够看见网页和模板了
    INFO  Start processing
    INFO  Hexo is running at http://localhost:4000/. Press Ctrl+C to stop.

在浏览器中输入localhost:4000,即可以看到网站初步的模样。

不要激动,咱们还要把网页发布到Github上去。

经过上面的初始化博客的步骤后,咱们在本地已经具备博客的雏形了。此时,只须要再稍加配置就能够部署至远程的GitHub了呢。


配置博客

Myblog—>blog目录下,用sublime/notepad++等文本编辑器打开_config.yml文件,修改参数信息。

特别提醒,在每一个参数的:后都须要有一个空格

修改网站相关信息:

language和timezone都是有输入规范的,详细可参考 语言规范和时区规范。

配置部署

代码中的hitergelei,修改为本身的。

其中repo项是以前Github上建立好的仓库的地址,能够经过以下图所示的方式获得:

branch是项目的分支,咱们默认用主分支master。

此外,可将_config.yml中的repo修改成以下标准格式:

repo: https://用户名:密码@github.com/用户名/用户名.github.io.git

这样作的好处就是每次hexo deploy提交时不须要输入帐号密码。

配置统一资源定位符
若是有我的域名的话能够设置,不然跳过便可。若是是github.io的网址,也是能够填上的。
url: https://hitergelei.github.io

对于root(根目录)、permalink(永久连接)、permalink_defaults(默认永久连接)等其余信息保持默认。

上述配置博客中的配置部署部分,将本地博客与远程的仓库地址牢牢联系在了一块儿。固然,以前配置GitHub时的SSH也是一样的做用,两者缺一不可。让咱们再回顾一下发表文章的流程吧。

发表文章

1.新建一篇博文,在CMD(或者Git Bash)中输入:

$ hexo new "用Hexo+GitHub搭建我的博客"
INFO  Created: E:\Myblog\blog\source\_posts\用Hexo-GitHub搭建我的博客.md

2.根据上述提示路径找到该文章,打开,使用Markdown语法编辑文章。

在文章的一开始处,能够按以下格式添加文章标题,日期,分类、标签以及描述等:

---
    title: 用Hexo+GitHub搭建我的博客    #文章标题
    date: 2018-04-02 21:19    #文章生成时间
    categories: "Hexo教程"     #文章分类目录 能够省略
    tags: [标签1,标签2,标签3]  #文章标签根据本身状况可加可不加
    description:    使用Hexo在GitHub上搭建我的博客    #你对本页的描述 能够省略
---

3.接着在blog目录下,输入以下的一系列(三个)命令:

$ hexo clean
$ hexo generate
$ hexo server

对应以下图:


打开http://localhost:4000/,能够在本地预览网站的初步样子。


最后一步,发布到远程,执行hexo deploy

$ hexo deploy
ERROR Deployer not found: git

发现本身出错了,解决方案:
npm install hexo-deployer-git --save

好了,接下来我从新运行下$ hexo deploy命令:

正常状况下,会跳出Github登陆,直接登陆;若是没有问题,在浏览器输入本身的博客地址:如: hitergelei.github.io

而后刷新一下本身的github.io页面,就能够看到已经有内容了。(有可能稍有延迟)

而后刷新一下本身的github.io页面,就能够看到已经有内容了。(有可能稍有延迟)

其中的hexo deploy是新命令哦,它与hexo server的区别在于:hexo server能够在本地实时预览,hexo deploy是将本地的改动同步到GitHub远程仓库

最后再来简单地总结一下吧。

总结

发布文章的步骤:
一、hexo new 建立文章(固然也能够经过其余方式手动建立Markdown文件)
二、Markdown语法编辑文章
三、部署(全部打开CMD都是在blog目录下)

hexo clean     #清除缓存 网页正常状况下能够忽略此条命令
hexo generate    #生成
hexo server    #启动服务预览,非必要,可本地浏览网页
hexo deploy   #部署发布

其中的部分命令能够简写:

hexo n “新建的XX博客文章” == hexo new “新建的XX博客文章” #新建文章
hexo g == hexo generate # 生成
hexo s == hexo server # 启动服务预览
hexo d == hexo deploy # 部署

[注]:本文主要参照了[https://zhuanlan.zhihu.com/p/33565651]

到此为止,相信你已经对博客的总体流程有了必定的把握,想要对博客进一步优化吗?

更多参考见:http://wangwlj.com/2017/09/09/blog-opti/

相关文章
相关标签/搜索