为啥?
好记性不如烂笔头.有事儿没事把自己所做所想写一下,不然忘记等于白(mang)活…
pages.github.io 作为blog大致原理:
通过在github上创建[用户名.github.io]的仓库将其中的静态页面(index.html)作为首页,让相同域名[用户名.github.io]将网站(index.html内容)展示出来.
想一想要怎么做?
- 申请个github账号.
- 开通pages(看说明一般是创建一个[账户名.github.io]的仓库, 说明有helloworld的例子)
- 选一种blog(eg:hexo, jekyll等).
- 美化主题 上传内容.
实践.
我选用hexo作为生成静态页面的工具,所以先去下载安装hexo,更换主题(按照hexo官网教程做就可以了)
简单说一下hexo的理解, 看完应该能让自己的blog跑起来.不过不专业…毕竟刚知道这个没几个小时.
安装以及初始化项目
1
2
3
4
5npm install hexo-cli -g
hexo init blog
cd blog
npm install
hexo server更换主题
在官网找一个喜欢的主题,点击标题进入主题github,一般有说明告诉你这么做
大致的意思就是:- 把主题文件clone到项目的theme/主题名文件夹,
- 在项目配置文件_config.yml中指定 theme: 主题名
- 更改一些主题的配置(1.看主题git hub的说明,2.打开主题文件夹下的_config.yml看一看)
新建文章 在项目目录运行命令 hexo new post ‘文章名’
其实就是在项目的 source/_post/下建立 “文章名.md” 文件,hexo应该是会来这里获取并展示文章.本地可以跑了 怎么能放到自己的github pages上去?
上面说github pages,显示的其实是静态文件, 那么我们本地做好的hexo server 可以访问的blog怎么搬到github pages上去呢? 下面两种办法选一个应该就可以了hexo generate 可以将blog内容生成静态文件 存放在项目的public中,将里面的文件push到[用户名.github.io]仓库.
配置hexo deploy
在项目目录安装插件 npm install hexo-deployer-git –save
修改项目_config.yml配置(1.注意格式冒号后要有一个空格,否则可能运行命令没有反应.2.github ssh key什么的设置请在搜索引擎搜索)
1
2
3
4
5deploy:
type: git
repo: <repository url> #https://bitbucket.org/JohnSmith/johnsmith.bitbucket.io
branch: [branch] #published
message: [message] #leave this blank项目目录中运行
hexo clean && hexo deploy
运行成功 github仓库提交记录会有显示 如图
注意: 如果你使用自己的域名做了cname到github的pages, 运行
hexo deploy
的时候可能会把设置给冲掉导致blog无法访问,将CNAME文件(内容为域名地址)放在项目的source文件夹下 可以防止每次hexo deploy
被冲掉.
- 大多数问题看文档都能解决, 那么我们是否每次动手的时候都去扒一扒文档?