在github Pages上部署octopress搭建个人博客系统
原文链接:http://caiqinghua.github.io/blog/2013/08/26/deploy-octopress-to-github-pages/
引子
上一篇博客已经说了为什么要搭建这个博客系统,本文不再啰嗦,单刀直入,说以下主题。 1. Octopress是什么 2. Github Page是什么 3. 部署Octopress到Github Pages的过程 4. 部署中遇到的问题
理解本文的基本知识
- windows命令行基本使用方法(运行中输入cmd,输入enter)
- git(学习资料: Pro Git 简体中文版,请自行google下载)
- github(github.com)
- ruby(本文只要会安装,会用几条命令即可)
什么是octopress?
自动化创建静态博客工具,包括一些模板和一些批处理工具。 用ruby和sass实现的,作者imathis也是compass的作者,compass是什么不是本文的关注点,请读者自行google了解。
什么是github pages?
github静态页面,为项目做宣传主页之类的用处。
为什么部署到github pages?
github pages免费空间,免费流量,每次的博客改动和博客模板的改动都由git跟踪。没有理由不选择。
step by step 部署Octopress到Github Pages
准备
系统:Windows 7
Git:下载地址
Ruby:下载地址 注意: 部署octopress到github之前我已经安装过ruby on rails,所以我没有安装上面的ruby 1.9.3。 我安装是railsinstaller-2.2.1,详情请查看:http://railsinstaller.org/en 所以下面的安装过程出很多问题也许和此有关,所以还是建议直接安装ruby 1.9.3,不要安装railsinstaller。
DevKit:下载地址
Octopress:git://github.com/imathis/octopress.git
安装软件
安装Git Windows下安装Git很简单,一路next就可以了。
安装Ruby Ruby的安装也是一路next就可以,不过记得勾选“Add Ruby executables to your PATH”,将Ruby的执行路径加入到环境变量中,如果忘记勾选,也可以手动设置。安装完后可以在命令提示符中输入ruby –version 来确认是否安装成功。
安装DevKit DevKit下载下来的是一个自压缩文件,我们将其解压到D:/DevKit,有两点需要注意:
- 解压目录中没有有中文和空格;
- 必须先安装Ruby,而且Ruby需要是RubyInstallser安装。
解压DevKit后,在命令行输入以下命令来进行安装:
1 |
|
用Git下载octopress源代码到本地
1 |
|
下载完成后会在D:\ruby文件中生成octopress文件夹,下面的操作都是基于这个文件夹。
安装Octopress依赖项
1 |
|
安装octopress默认主题
1 |
|
创建第一篇博客
1 |
|
本地预览生成的博客系统和博客
1 |
|
以上已经把octopress博客系统和第一篇博客生成了,接下来要把生成的博客系统和博客部署到github pages。
创建git repository
https://github.com/ Create a new repo 输入名称 username.github.com,注意username改为你的username,不能省略后面的github.com。 eg. caiqinghua.github.com
设置刚刚创建的repository路径到本地
1 |
|
请输入:git@github.com:yourname/yourname.github.com.git (将yourname替换成你的github登录名)
注意:这一步不要输入提示中提示的以io结束的地址。
设置SSH
设置步骤自行google解决 也可以不设置SSH,每次输入githib密码上传,请自行google解决
部署你的博客
1 |
|
一面的deploy只是把_deploy目录上传到你的repo的master分支,即只是把生成的静态博客站点上传到github pages了。下面还需要把生成这个静态站点工具上传到repo的source分支
提交的source目录
1 |
|
到github.com查看你上面新建的repository,会多一个source分支,记载所有的源文件。
安装过程中遇到的问题
1. bundle install 过程中Installing rdiscount (2.0.7.3) 安装失败
猜测原因:DevKit问题 把Ruby200中的DevKit删除,把path中c:\Ruby200\devkit 删除 重新执行bundle install 成功了
2. rake install 错误
1 |
|
解决办法: 修改octopress/Gemfiles gem ‘rake’, ‘~> 0.9’ 改为 gem ‘rake’ 再次rake install成功了
3. rake setup_github_pages ‘hellip’ 不是内部或外部命令
1 |
|
google: ‘hellip’ 不是内部或外部命令,也不是可运行的程序 http://pythonee.github.io/blog/2012/08/10/how-to-octpress/ 这个错误无关痛痒,无需解决。
4. rake deploy
1 |
|
解决办法:设置ssh,前面已经提及
5. 再次rake deploy,发生以下错误
1 |
|
问题原因:rake setup_github_pages 中 git@github.com:caiqinghua/caiqinghua.github.io设置错误,应该设置为 git@github.com:caiqinghua/caiqinghua.github.com.git 解决办法: 查看octopress_deploy.git\config
发现url错误,修改后,重试,部署完成
1 |
|
修改为
1 |
|
注意: octopress.git\config 中的url也生成错了。
1 |
|
应该修改为
1 |
|
重新执行rake gen_deploy执行成功了
立即访问 caiqinghua.github.com,提示404 页面未找到错误 10分钟后访问,可以看到本地预览的博客了。 到此部署octopress到github pages总算完成了。
后记
octopress中用markdown格式撰写博文,关于markdown语法,如何撰写博客,如何个性化设置博客,且听下文分解。
Posted by 蔡清华 caiqinghua@126.com Aug 26th, 2013 opensource, tools
在github Pages上部署octopress搭建个人博客系统的更多相关文章
- Centos 7使用docker部署LAMP搭建wordpress博客系统
0.简要概述 LAMP是目前比较流行的web框架,即Linux+Apache+Mysql+PHP的网站架构方案.docker是目前非常流行的虚拟化应用容器,可以为任何应用创建一个轻量级.可移植的容器. ...
- github pages + Hexo + 域名绑定搭建个人博客增强版
概述 前面我们用github pages + Hexo 搭建了一个简单版的个人博客系统,但是里面的内容单调,很多功能不够完善,所以我们需要对yelle 的主题进行优化和完善.基本搭建请访问:http: ...
- github pages + Hexo + 域名绑定搭建个人博客
环境 Windows 10(64 位) Git-2.7.4-64-bit node-v4.4.7-x64 如果上述软件已经安装的,跳过,没有安装的下载安装. 1,git下载安装(https://git ...
- 博客Hexo + github pages + 阿里云绑定域名搭建个人博客
申请域名 万网购买的域名,地址:https://wanwang.aliyun.com/domain/com?spm=5176.8142029.388261.137.LoKzy7 控制台进行解析 控制台 ...
- Hexo + github pages + 阿里云绑定域名搭建个人博客
申请域名 万网购买的域名,地址:https://wanwang.aliyun.com/domain/com?spm=5176.8142029.388261.137.LoKzy7 控制台进行解析 控制台 ...
- 使用github + Octopress 搭建免费博客 + 碰到问题的解决方法
使用github + Octopress 搭建免费博客,先说碰到的问题,具体创建方法见下面. 问题1, 添加ruby淘宝链接问题,显示无法获取, 解决: source “http://ruby.tao ...
- windows上使用mkdocs搭建静态博客
windows上使用mkdocs搭建静态博客 之前尝试过用HEXO搭建静态博客,最近发现有个叫mkdocs的开源项目也是搭建静态博客的好选择,而且它支持markdown格式,下面简要介绍一下mkdoc ...
- day09搭建均衡负载和搭建BBS博客系统
day09搭建均衡负载和搭建BBS博客系统 搭建BBS博客系统 本次搭建bbs用到的技术 需要用到的: 1.Nginx+Django 2.Django+MySQL 环境准备 主机 IP 身份 db01 ...
- 一步步在 github pages 上用 jekyll 搭建属于自己的博客
序 我的专业与互联网没有太大关系,接触博客还是工作以后的事情.随着工作的经验增加,总想将自己的所思所得记录下来,毕竟,好记性不如烂笔头. 开始是将自己的总结在本地保存,但是本地有一个劣势,就是不能随时 ...
随机推荐
- FastReport.Net使用:[31]使用带参查询及存储
带参查询 1.在数据列表中创建一个名为姓名的参数. 然后使用一个对话框,将文本框的ReportParameter(报表参数)选为参数中的姓名. 给童鞋们的一个题目:这里可以改为下拉框,学生列表从数据库 ...
- 【BZOJ 4455】 4455: [Zjoi2016]小星星 (容斥原理+树形DP)
4455: [Zjoi2016]小星星 Time Limit: 10 Sec Memory Limit: 512 MBSubmit: 426 Solved: 255 Description 小Y是 ...
- java switch
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha switch 是 开关:转换 的意思. 支持的数据类型 有 : 字节,字符,短整型,整型 ...
- Dalvik 虚拟机 jvm 区别
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha dalvik 基于 寄存器, jvm基于 栈. 寄存器,编译时间会更短. dalvik ...
- AHOI2018训练日程(3.10~4.12)
(总计:共90题) 3.10~3.16:17题 3.17~3.23:6题 3.24~3.30:17题 3.31~4.6:21题 4.7~4.12:29题 ZJOI&&FJOI(6题) ...
- [转]最流行的android组件大全
目录(?)[+] 目录(?)[-] 最流行的android组件大全 UI组件 类库 游戏引擎 Android HTML5应用 最流行的android组件大全 最新更新文档请访问我的网站 Andro ...
- 读书笔记_Effective_C++_条款二十九:为“异常安全”而努力是值得的
还是举书上的例子: void PrettyMenu::changeBackground(std::istream& imgSrc) { lock(&mutex); delete bgI ...
- unix/linux中如何在vi编辑器中方便的跳转到首行和末行?
1.跳转到首行,:0/:1 2.跳转到末行,shift +g/G/:$
- 为什么要使用netty
选择Netty的理由在开始本节之前,我先讲一个亲身经历的故事:曾经有两个项目组同时用到了NIO编程技术,一个项目组选择自己开发NIO服务端,直接使用JDK原生的API,结果2个多月过去了,他们的NIO ...
- IDA Pro plug-in defines
/* This file contains definitions used by the Hex-Rays decompiler output. It has type definitions an ...