小引

Octopress是利用Jekyll博客引擎开发的一个博客系统,生成的静态页面能够很好的在github page上展现。号称是hacker专属的一个博客系统(A blogging framework for hackers.)

根据大家的反应,本文我就来介绍一下如何在苹果电脑(OS X 10.8.3)利用Octopress搭建一个Github博客。本文需要读者熟悉一些shell命令,并掌握基本的git操作。

目录

  • 1、安装Ruby
  • 2、安装Octopress
  • 3、配置Octopress
  • 4、将博客部署到GitHub上
  • 5、开始写博客
  • 6、更多操作
  • 7、小结

1、安装Ruby

Octopress需要Ruby环境,RVM(Ruby Version Manager)负责安装和管理Ruby的环境。所以我们先在终端输入如下命令,来安装RVM:

curl -L https://get.rvm.io | bash -s stable --ruby

接着是安装Ruby 1.9.3,在终端依次运行如下命令:

rvm install 1.9.3
rvm use 1.9.3
rvm rubygems latest

完成上面的操作之后,运行ruby --version应该可以看到ruby 1.9.3环境已经安装好了。

参考:Installing Ruby With RVM

2、安装Octopress

在安装Octopress之前,请确保你的电脑上已经安装有git了,在终端输入git --version,应该可以看到电脑中的git版本(我电脑上输出:git version 1.7.12.4 (Apple Git-37)),如果没有显示相关内容,请先安装git。

git安装之后,利用git命令将octopress从github上clone到本机,如下命令:

git clone git://github.com/imathis/octopress.git octopress
cd octopress    # If you use RVM, You'll be asked if you trust the .rvmrc file (say yes).
ruby --version  # Should report Ruby 1.9.3

接着安装相关依赖项:

gem install bundler
rbenv rehash    # If you use rbenv, rehash to be able to run the bundle command
bundle install

最后安装默认的Octopress 主题。

rake install

参考: Octopress Setup

3、配置Octopress

Octopress的作者已经尽量让配置简化了。大多数情况下只需要配置_config.ymlRakefile文件即可。其中Rakefile是跟博客部署相关,一般情况下并不需要修改这个文件,除非使用了rsync。

config.yml是博客重要的一个配置文件,在config.yml文件中有三大配置项:Main ConfigsJekyll & Plugins3rd Party Settings

一般,该文件中其中url是必须要填写的,这里的url是在github上创建的一个仓库地址,具体请看第四步中创建的地址。另外再修改一下titlesubtitleauthor,根据需求,在开启一些第三方组件服务。

关于_config.yml文件中的更多内容,请看这里的内容:Configuring Octopress

建议:最好把里面的twitter相关的信息全部删掉,否则由于GFW的原因,将会造成页面load很慢。同理,修改定制文件/source/_includes/custom/head.html 把google的自定义字体去掉。from唐巧的博文中—配置

4、将博客部署到GitHub上

Github的Page service可以免费托管博客,并且还可以自定义域名。

首先需要在GitHub上创建一个仓库,并将仓库名称按照这样的方式进行命名:username.github.comorganization.github.com。等后面配置完毕之后,我们就可以在浏览器中使用页面地址http://username.github.com来访问我们的博客。一般来说,我们希望在将博客的源码放到source分支下,并把生成的内容提交到master分支。

创建好仓库之后,我们需要利用octopress的一个配置rake任务来自动配置上面创建的仓库:可以让我们方便的部署GitHub page。在终端输入如下命令:

$ rake setup_github_pages

上面的命令会做一些事情(详细介绍看下面给出的参考链接)。其中最主要的就是创建一个_deploy目录,目录用来存放部署到master分支的内容。期间会要求你输入仓库的url,根据提示,进行输入即可。

完成上面的命令之后,我们就可以生成博客并真正的部署到仓库中了。执行如下命令:

rake generate
rake deploy

上面的命令首先生成博客文件,并将生成的博客文件拷贝到_deploy/目录下,然后将这些内容添加到git中,并commit和push到仓库的master分支。

现在可以访问http://username.github.com了。注意:有时候可能会有延时,要等几分钟才能打开。

至此,我们的博客已经完成基本的部署,不过博客的source需要单独提交,执行如下命令就可以将source提交到仓库的source分支下。

$ git add .
$ git commit -m 'Initial source commit'
$ git push origin source

如果在部署到仓库之前,需要先预览一下博客,可以在终端输入rake preview命令,然后就能在浏览器中进行本地预览访问了:http://127.0.0.1:4000/http://localhost:4000/,效果跟仓库中的一样。

参考:Deploying to Github Pages

5、开始写博客

Octopress为我们提供了一些task来创建博文和页面。博文必须存储在source/_posts目录下,并且需要按照Jekyll的命名规范对文章进行命名:YYYY-MM-DD-post-title.markdown。文章的名字会被当做url的一部分,而其中的日期用于对博文的区分和排序。

通过Octopress提供的task可以正确的按照命名规范创建一个博文,并且在博文中会附带常用的一些yaml元数据。只需要在终端输入如下命令:

rake new_post["title"]

其中title为博文的文件名,创建出来的文件默认是markdown格式。上面的命令会创建出这样一个文件:source/_posts/2013-08-03-title.markdown。打开这个文件,可以看到里面有如下一些内容了(告诉Jekyll博客引擎如何处理博文和页面):

---
layout: post
title: "title"
date: 2013-08-03 16:36
comments: true
categories:
---

接着我们就可以在这个文件中写我们的博文啦。完成之后,我们可以预览和部署博文。下面是创建并部署博文的一个完整过程:

$ rake new_post["New Post"]
$ rake generate
$ git add .
$ git commit -am "Some comment here."
$ git push origin source
$ rake deploy

参考:Blogging Basics

6、更多操作

在搭建博客的时候,我们可能会对博客做一些配置,例如添加评论、域名解析、分享等。这些内容我写在另外一篇文章中,会经常更新,请前往观看:你好!github页面

7、小结

本文介绍了如何利用Octopress搭建一个Github博客。

来源:http://beyondvincent.com/blog/2013/08/03/108-creating-a-github-blog-using-octopress/

利用Octopress搭建一个Github博客相关推荐

  1. 如何搭建一个独立博客——简明Github Pages与Hexo教程

    (?)[-] http://cnfeat.com/2014/05/10/2014-05-11-how-to-build-a-blog/ 摘要:这是一篇很详尽的独立博客搭建教程,里面介绍了域名注册.DN ...

  2. 如何从零搭建一个hexo博客网站01

    title: 如何从零搭建一个hexo博客网站01 #文章標題 categories: "Hexo教程" #文章分類目錄 可以省略 categories: "Hexo教程 ...

  3. 如何从零搭建一个hexo博客网站02

    title: 如何从零搭建一个hexo博客网站02 categories: "Hexo教程" #文章分類目錄 可以省略 简介:此教程分为两部分,云服务器篇和本地pc机篇 tags: ...

  4. 实现在CentOS7环境下搭建个人github博客

    实现在CentOS7环境下搭建个人github博客 主机要求:必须是centos环境版本可以不一样,假如你用的是其他版本的linux系统,只不过是命令不太一样. Tips:这里提前说下,对于Ubunt ...

  5. 不会代码,如何搭建一个个人博客?

    本科的时候不是计算机专业,学的自动化,也不太上进,尽顾着玩游戏了.那会一直觉得那些写博客的人超级牛逼,能够搭建自己个人博客的人更是牛逼哄哄的啊~ 前段时间,研究生课题没那么忙的时候,折腾着搭建了一个自 ...

  6. Github+Hexo 搭建一个个人博客

    前言: 我最近想要将计算机界的几个基础课程的学习做一下笔记,可是又不想要写在这个wordpress站上(这个站专门负责花里胡哨的东西),所以我就想在github再创建一个小博客,作为一个分站. 提示: ...

  7. 最简便的方法搭建Hexo+Github博客,基于Next主题

    前言 如果你喜欢写作,我觉得你可以试试gitbook或者跟着本文搭建一个属于自己的博客空间(即使你不是IT行业的一员),不再受限于第三方博客地址,当然Hexo搭建的博客也是基于github托管的,但是 ...

  8. 手把手教你利用hexo搭建自己的博客网站----史上完整详细版(基于GitHub for mac)

    文章目录 一.安装Node.js 1.1 下载完该安装包,直接进行安装即可. 1.2 打开终端,切换至root用户. 1.3 查看一下node的版本 1.4 查看npm的版本 二.安装hexo 2.1 ...

  9. 从 0 开始搭建一个技术博客,私藏干货~

    2019独角兽企业重金招聘Python工程师标准>>> 技术博客的选型有很多种,如:博客园.CSDN.开源中国.简书.知乎等--都可以用来写文章,形成自己的技术博客. 上面的博客都是 ...

最新文章

  1. 算法-二叉树的最近公共祖先
  2. Sql语句查询 显示序号
  3. 如何解决编程的误差问题_柏威机械丨高精密零件加工是如何解决误差精度问题的?...
  4. Animation Studio插件怎么用?Nitrozme Animation Studio Packages Mac(AE插件拓展包) 安装教程
  5. vue跳转传参刷新后参数消失
  6. java中a 和 a_Java中的a++和++a的区别 | 学步园
  7. 动易 当前服务器不允许上传文件,动易网站详细安说明及常见疑难解答.doc
  8. C语言match函数的定义与用法,Match函数的基本用法
  9. [Win] 免登录百度网盘高速下载器 ENFI下载器 v1.3.1
  10. Women Feel Excited About The Beautiful Louis Vuitton Bags
  11. 头条面试题:判断一个数是否是happy number(每一位的平方和最终为1)
  12. NLP入门:pyltp的介绍与使用
  13. 客户端在线更新-QT
  14. 使用Python以UCI心脏病数据集为例,进行数据简单分析
  15. echo命令详细解析(linux中超级详细,图文展示)
  16. Ceph配置——5.Ceph-MON设置
  17. 常用数据库有哪些(附带数据库排名)?
  18. Servlet技术,response 生成图片验证码
  19. unity3d安卓打包教程
  20. 《PPT高手之路》学习1

热门文章

  1. 流感传染(信息学奥赛一本通-T1191)
  2. 信息学奥赛C++语言: 不与最大数相同的数字之和
  3. 信息学奥赛一本通C++语言——1112:最大值和最小值的差
  4. charles浏览器抓包https_charles https抓包
  5. python中while语句的用法_全面解析Python的While循环语句的使用方法
  6. 从零开始学Java之 编写简单的工程
  7. java base64 显示不完整_如何解决CAD图纸显示不完整、图纸无效?一分钟教你,不允许错过...
  8. ps 替换文字_这可能是PS最难用的功能!解决PS字体列表硬伤的利器FonTags
  9. java 获取web目录结构_Intellij Idea Javaweb 目录结构及获取项目内资源
  10. ubuntu16.04中如何将python3设置为默认