使用Hexo在github上搭建个人博客
环境配置
Hexo官网上本就有对Hexo安装及使用的详细介绍,墙裂推荐。这里来讲述自己安装的亲身步骤,或有区别。
1.Node.js
用来生成静态页面。移步Node.js官网,下载v5.5.0 Stable 一路安装即可。
2.Git
用来将本地Hexo内容提交到Github上。Xcode自带Git,这里不再赘述。如果没有Xcode可以参考Hexo官网上的安装方法。
安装Hexo
当Node.js和Git都安装好后就可以正式安装Hexo了,终端执行如下命令:
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,能看到效果。
本地设置好后,接下来开始关联Github。
关联Github:
创建仓库
登录你的Github帐号,新建仓库,名为用户名
.github.io
固定写法,如wangdachui.github.io
即下图中1
所示:
本地的blog
文件夹下内容为:
_config.yml
db.json
node_modules
package.json
scaffolds
source
themes
打开_config.yml,
打开后往下滑到最后,修改成下边的样子:
deploy: type: git repository: https://github.com/gonghonglou/wangdachui.github.io.git branch: master
你需要将repository
后wangdachui换成你自己的用户名。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 generate
和hexo deploy
命令。
若你未关联Github,则执行hexo deploy
命令时终端会提示你输入Github的用户名和密码,即
Username for 'https://github.com': Password for 'https://github.com':
hexo deploy
命令执行成功后,浏览器中打开网址http://wangdachui.github.io(将wangdachui
换成你的用户名)能看到和打开http://localhost:4000
时一样的页面。
为避免每次输入Github用户名和密码的麻烦,可添加SSH Key到Github
发布文章
终端cd到blog
文件夹下,执行如下命令新建文章:
$ hexo new "postName"
名为postName.md
的文件会建在目录/blog/source/_posts
下,postName
是文件名,为方便链接不建议掺杂汉字。你当然可以用vim来编辑文章。我在用Mou编辑器,支持预览,虽然其预览主题并非我喜欢,如果你有好用的markdown编辑器请推荐给我,感激不尽!
文章编辑完成后,终端cd到blog
文件夹下,执行如下命令来发布:
hexo generate //生成静态页面
hexo deploy //将文章部署到Github
安装theme
你可以到Hexo官网主题页去搜寻自己喜欢的theme。这里以hexo-theme-next为例
终端cd到 blog
目录下执行如下命令:
$ git clone https://github.com/iissnan/hexo-theme-next themes/next
将blog
目录下_config.yml
里theme
的名称landscape
修改为next
终端cd到blog
目录下执行如下命令(每次部署文章的步骤):
$ hexo clean //清除缓存文件 (db.json) 和已生成的静态文件 (public) $ hexo g //生成缓存和静态文件
至于更改theme内容比如名称、描述、头像等去修改blog/_config.yml
文件和blog/themes/next/_config.yml
文件中对应的属性名称即可, 不要忘记冒号:
后加空格。 NexT 使用文档里有极详细的介绍。
主题下会有更详细的自定义教程,这里就不展开了。欢迎关注我的技术博客:https://wangdachui.github.io
使用Hexo在github上搭建个人博客的更多相关文章
- 用Hexo在GitHub上搭建个人博客
我用Hexo在GitHub上搭建好了自己的博客,我的这第一篇博客就来说说搭建的过程. 1 环境配置 本文使用环境如下: Windows 10 node.js v8.1.3 git v2.13.2 np ...
- hexo在git上搭建个人博客
公司实习第一天接到的任务是:搭建一个基于Nodejs的开源项目的开发环境,接到任务时以为不是很困难,后来才知道该项目已于去年被废弃,搭配环境的时候遇到了不少问题,折腾了两天还是没有最终完成... 不过 ...
- HEXO与Github.io搭建个人博客
HEXO与Github.io搭建个人博客 HEXO搭建 HEXO是基于Node.JS的一款简单快速的博客框架,能够支持多线程,支持markdown,可以将生成的静态网页发布到github.io以 ...
- 在github上搭建个人博客并在线更新
换博客比更博还勤的我终于决定写一篇博客搭建教程了.. FAQ Q:\(hexo\)需要本地编译.\(jekyll\)虽然可以直接上传\(md\)..但是如果在github上直接编译也太难受了叭,毕竟不 ...
- Github上搭建个人博客记录
1.注册,用户名一定要起好,别随便起. 2.登录后,新建一个仓库repositories.new一个. 命名为用户名.github.io.如果发现不一样进Settings修改,rename. 3.仓库 ...
- HEXO+Git+Github+域名搭建个人博客
搭建个人博客可以分为以下五个部分 一.搭建本地环境(个人为Win10) 1.安装Git,下载地址:点击 下载后,按提示进行安装即可,作用是:把本地的内容提交到github上去 注意:官网下载速度不是很 ...
- 在github上搭建个人博客
1.平台注册账号,新建域名 github(源码托管服务站):https://github.com/到GitHub官网,注册自己的账号,填好用户名,密码,邮箱,并完成邮箱验证就可以啦!默认的域名是htt ...
- 使用Jekyll在Github上搭建个人博客 - 环境搭建
本地安装Jekyll 首先安装Ruby及gem Ruby的安装 Ruby官网进行下载 从RubyInstaller下载ruby [新手推荐] 我采用的是RubyInstaller,无脑简单 勾选时我配 ...
- 基于 Hexo + GitHub Pages 搭建个人博客(一)
前言:我的博客写作之路 15 年刚上大学,第一次接触公众号,就萌生了创建一个公众号写点东西,但最终不了了之. 很快到了 16 年,开始接触网上各大博客网站,接触最多的当属 CSDN,萌生了注册一个博客 ...
随机推荐
- 【UOJ 351】新年的叶子
http://uoj.ac/problem/351 其实原来看到这题是真的不想做的 毕竟真的特别怕期望题 后来莫名发现自己打了正解 也是很震惊的2333 Description 对于一棵树,每次随 ...
- A1105. Spiral Matrix
This time your job is to fill a sequence of N positive integers into a spiral matrix in non-increasi ...
- 【洛谷P4318】完全平方数
题目大意:求第 K 个无平方因子数. 题解:第 k 小/大的问题一般采用二分的方式,通过判定从 1 到当前数中满足某一条件的数有多少个来进行对上下边界的转移. 考虑莫比乌斯函数的定义,根据函数值将整数 ...
- 再谈 javascript 数组去重
前言 数组去重方法老生常谈,既然是常谈,我也来谈谈 双层循环 也许我们首先想到的是使用 indexOf 来循环判断一遍,但在这个方法之前,让我们先看看最原始的方法: var array = [1,1, ...
- 利用selenium并使用gevent爬取动态网页数据
首先要下载相应的库 gevent协程库:pip install gevent selenium模拟浏览器访问库:pip install selenium selenium库相应驱动配置 https: ...
- Redis在python中的使用
一 简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(sorted ...
- Java String与Stringbuffer
String 与其它类型的转换,e.g. BigInteger Stringbuffer 诸多函数,replace…… String 不能修改,Stringbuffer 可以修改, 应避免以下的操作: ...
- 斯坦福大学公开课机器学习: machine learning system design | error analysis(误差分析:检验算法是否有高偏差和高方差)
误差分析可以更系统地做出决定.如果你准备研究机器学习的东西或者构造机器学习应用程序,最好的实践方法不是建立一个非常复杂的系统.拥有多么复杂的变量,而是构建一个简单的算法.这样你可以很快地实现它.研究机 ...
- MySQL填充字符串函数 LPAD(str,len,padstr),RPAD(str,len,padstr)
转: MySQL填充字符串函数 LPAD(str,len,padstr),RPAD(str,len,padstr) LPAD(str,len,padstr) 用字符串 padstr对 str进行左边填 ...
- 函数式编程 lodash 常用api
1.forEach _.forEach({ 'a': 1, 'b': 2 }, function(value, key) { console.log(key); }); _.forEach([3,4] ...