利用 Github Pages 与 Hexo 搭建个人博客
Windows与Linux环境下方法大同小异,这里以Windows为例。
推荐使用Jetbrains的WebStorm。
更新
目前项目存在依赖问题有
npm WARN deprecated aaa@qq.com1.4.2: This package is no longer maintained
npm WARN deprecated aaa@qq.com1.11.0: Jade has been renamed to pug, please install the latest version of pug instead of jade
npm WARN deprecated aaa@qq.com2.1.0: Deprecated, use jstransformer
npm WARN prefer global aaa@qq.com0.3.6 should be installed with -g
npm WARN prefer global aaa@qq.com3.6.2 should be installed with -g
//固有
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: aaa@qq.com^1.0.0 (node_modules/chokidar/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for aaa@qq.com1.1.2: wanted {"os":"darwin","arch":"any"} (current: {"os":"linux","arch":"x64"})
环境准备
Node.js
Node直接官网下载安装,无需配置环境变量。
Linux下可使用nvm安装配置多版本。
Node现已自带npm。
换源:
-
临时使用
$ npm --registry https://registry.npm.taobao.org install express
-
持久使用
$ npm config set registry https://registry.npm.taobao.org
配置后可通过下面方式来验证是否成功
$ npm config get registry
-
通过cnpm使用
$ npm install -g cnpm --registry=https://registry.npm.taobao.org
以下的npm命令都可用cnpm代替。
Git与Github
Git可官网下载安装,不过下载速度不太稳定,似乎也无需配置环境变量。Windows下可能会有权限的问题(大部分出错的源头都在这),实在不行就用Git bash,但是安装时也不推荐选择“Git bash only”。
由于我们的博客是放在Github pages上,最后的博客地址为< username>.github.io,同时也是仓库名,因此需要在本地生成ssh**与Github账号进行连接。为了防止自己以后又东翻西找,下面是会用到的命令:
-
打开Git Bash查看电脑上是否已经存在SSH**:
$ cd ~/.ssh
若显示“No such file or directoy”,则需要创建新的ssh key
-
创建新的ssh key:
$ ssh-****** -t rsa -C "<youremail>"
执行这条命令会提示文件保存路径,可以直接Enter,默认保存在当前用户目录。然后提示输入passphrase,可以直接Enter,即无密码.
-
复制ssh key到Github
用编辑器打开.ssh目录下的id_rsa.pub文件,复制里面的全部内容,add ssh key
-
测试ssh连接Github:
$ ssh -T aaa@qq.com
期间会提示输入密码,若无则无
-
设置自己的git信息:
$ git config --global user.name "username" (此处username可修改也不是用于登录github的登录名) $ git config --global user.email "<youremail>"
设置自己的git信息即完成安装和设置,可以输入
$ git config --list
查看自己的git信息
正文
创建仓库,< username>.github.io
-
创建两个分支:master与hexo(名称自定义),
设置hexo为默认分支(保存整个项目文件,方便之后在其他电脑上部署),master分支保存生成的网站的静态文件(Github pages如此)。使用
$ git clone aaa@qq.com:<username>/<username>.github.io.git
拷贝仓库,在本地< username>.github.io文件夹下通过Git bash依次执行
$ npm install hexo -g $ hexo init $ npm install $ npm install hexo-deployer-git -g
修改_config.yml中的deploy参数,分支应为master,依次执行
$ git add . $ git commit -m “…” $ git push origin hexo
上传整个项目至远程仓库,执行
$ hexo generate $ hexo server
浏览器访问localhost:4000,可以看到博客主页,执行
$ hexo deploy
将网站部署到GitHub。
-
在另一台新电脑上pull已有项目
git pull <url>
不用执行命令“hexo init”
$ npm install $ npm install hexo -g $ npm install hexo-deployer-git -g
若是原有项目安装了新主题,建议将主题目录移出.gitignore,保存原有主题配置属性,否则需要重新clone,不然会出现deploy时“no layout”的提示,导致页面空白。
$ git clone https://github.com/xxx/yyy.git themes/yyy
有些主题需要安装另外的插件,所以建议之前install时添加–save保存至package.json。
至于主题修改、域名绑定、图床、各种plugin的添加,这里就不再赘述。
常用命令
-
Hexo
$ npm install hexo -g #安装 $ npm update hexo -g #升级 $ hexo init #初始化
-
简写
$ hexo n "我的博客" == hexo new "我的博客" #新建文章 $ hexo p == hexo publish $ hexo g == hexo generate#生成 $ hexo s == hexo server #启动服务预览 $ hexo d == hexo deploy#部署
-
服务器
$ hexo server #Hexo 会监视文件变动并自动更新,您无须重启服务器。 $ hexo server -s #静态模式 $ hexo server -p 5移出更改端口 $ hexo server -i 192.168.1.1 #自定义 IP $ hexo clean #清除缓存 网页正常情况下可以忽略此条命令 $ hexo g #生成静态网页 $ hexo d #开始部署
-
监视文件变动
$ hexo generate #使用 Hexo 生成静态文件快速而且简单 $ hexo generate --watch #监视文件变动
-
完成后部署,两个命令的作用是相同的
$ hexo generate --deploy $ hexo deploy --generate $ hexo deploy -g $ hexo server -g
-
草稿
$ hexo publish [layout] <title>
-
模版
$ hexo new "postName" #新建文章 $ hexo new page "pageName" #新建页面 $ hexo generate #生成静态页面至public目录 $ hexo server #开启预览访问端口(默认端口4000,'ctrl + c'关闭server) $ hexo deploy #将.deploy目录部署到GitHub $ hexo new [layout] <title> $ hexo new photo "My Gallery" $ hexo new "Hello World" --lang tw
推荐阅读
-
使用hexo+github搭建免费个人博客详细教程
-
用Github Pages+Hexo搭建博客之(八)Hexo博客Next主题添加统计文章阅读量(访问量/浏览量/阅读次数)功能
-
使用-hexo-github-搭建免费个人博客教程
-
荐 利用GitHub+Hexo搭建博客
-
github+hexo的个人博客搭建教程
-
如何搭建一个独立博客——简明Github Pages与Hexo教程
-
Hexo+github pages搭建个人独立网站,绑定域名全教程
-
Github pages+HEXO+域名绑定搭建个人博客
-
GitHub Pages + Hexo + 绑定个人域名搭建个人博客(Mac篇)
-
Hexo+Github pages博客绑定个人域名