前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Hello Octopress

Hello Octopress

作者头像
宅男潇涧
发布2018-08-01 15:58:33
5920
发布2018-08-01 15:58:33
举报
文章被收录于专栏:潇涧技术专栏

Hello world! Hello Octopress!

2016-11-13 update: 后来我的博客先后从Octopress进化到Hexo以及现在的Hugo

曾经因为很多问题的答案都在博客园上,于是我在那里驻扎了,但是,它的广告让我不能忍! 后来因为点点博客的小清新我瞬间就爱上了它,于是我搬家了,但是,它的冷清让我想要离开! 再后来Wordpress进入了我的眼帘,苦于没有host,只好在BAE上安营,但是,它的龟速简直让我发指! 最后我终于走进了我一直忽视了的Octopress,那一瞬间,我才发现,这才是我想要的!这才是我想要的博客!

A blogging framework for hackers. – Parker Moore

今天从早上开始一直到晚上终于把Octopress搭建和配置好了,好开心啊有木有! 下面介绍安装过程:[不是很轻松,但是也不会很难哟!] 安装步骤如下:

安装rbenv和ruby 请确保ruby版本是1.9.3以上!我试过,如果版本低的话会出错,但是如果版本很高的话也有可能出错(我试过1.9.3-p2xx),建议就安装1.9.3-p0,也可以使用rvm来管理ruby版本,我两个都试过了,推荐使用rbenv。

代码语言:javascript
复制
brew update
brew install rbenv
brew install ruby-build
rbenv install 1.9.3-p0
rbenv rehash
rbenv global 1.9.3-p0  #建议增加这句修改系统全局的ruby版本
ruby --version  #查看系统ruby版本

[注:如果install 1.9.3-p0时报错,提示llvm不行,需要安装gcc时按照提示的命令执行即可:brew tap homebrew/dupes ; brew install apple-gcc42]

安装Octopress 这部分耗时会长一些,其中的octopress目录名称可以随便修改,例如myblog等,gem list命令可以查看已经安装好了的依赖包,rake install就类似make install进行安装(Octopress的主题),一定要确保这里执行的命令都是正确执行了的,否则后面可能出错。

代码语言:javascript
复制
git clone git://github.com/imathis/octopress.git octopress
cd octopress
gem install bundler
rbenv rehash    # If you use rbenv, rehash to be able to run the bundle command
bundle install
rake install

发布到Github上 以前个人博客是在位于http://username.github.com这个域名下,现在改成了http://username.github.io,所以大家可以看到两种不同域名下的博客。另外,Github Pages分为两类,一类是个人或者组织的博客,另一类是项目的介绍博客,这里只介绍如果搭建不介绍后者,但是两者基本上相同。

首先新建repository,名称为username.github.io,其中username是你的github用户名,拷贝repository的SSH地址,类似git@github.com:username/username.github.io.git。然后执行下面代码``,它主要是进行以下操作(不难理解,我就不翻译了,原文看着舒坦,嘿嘿):

  • Ask for and store your Github Pages repository url.
  • Rename the remote pointing to imathis/octopress from ‘origin’ to ‘octopress’
  • Add your Github Pages repository as the default origin remote.
  • Switch the active branch from master to source.
  • Configure your blog’s url according to your repository.
  • Setup a master branch in the _deploy directory for deployment.
代码语言:javascript
复制
rake setup_github_pages #按照提示输入你的repository的SSH地址
rake generate #生成静态网页,记住,每次有修改之后都需要执行一次或者多次才能查看新的预览!
rake deploy  #发布网页,这里会提交代码到github
rake preview #本地预览,默认端口是4000,可以修改
git add .
git commit -m 'your message'
git push origin source  #一定记着要提交source下的内容

需要注意的是,如果你是Github新手的话,可能遇到Permission denied (publickey),这说明你还没有添加key给当前用户,解决方案请参考Error:Permission denied (publickey)Github help:Generating SSH Keys来为当前用户创建publickey,

通过命令ssh -T billy.anyteen@github.com可以查看Github是否识别当前用户,如果不能识别会返回Permission denied (publickey),否则便是Hi username! You've successfully authenticated, but GitHub does not # provide shell access.

另外,极力推荐一个Git的简明教程,作者廖雪峰是一位资深的开发者,著有畅销书籍《Spring 2.0核心技术与最佳实践》等,最近又推出了Python简明教程,非常实用!

大功告成!

① 大致介绍下Octopress的目录结构(摘自小明明s à domicile)

代码语言:javascript
复制
├─ config.rb  #指定额外的compass插件
├─ config.ru  
├─ Rakefile   #rake的配置文件,类似于makefile,这个我修改了一些内容
├─ Gemfile    #bundle要下载需要的gem依赖关系的指定文件
├─ Gemfile.lock  #这些gem依赖的对应关系,比如A的x本依赖于B的y版本,我也修改了
├─ _config.yml  #站点的配置文件
├─ public/  #在静态编译完成后的目录,网站只需要这个目录下的文件树
├─ _deploy/  #deploy时候生成的缓存文件夹,和public目录一样
├─ sass/  #css文件的源文件,过程中会compass成css
├─ plugins/  #放置自带以及第三方插件的目录,ruby程序
│  └── xxx.rb
└─ source/  #这个是站点的源文件目录,public目录就是根据这个目录下数据生成的
   └─ _includes/
      └─ custom/  #自定义的模板目录,被相应上级html include
         └─ asides/  #边栏模板自定义模板目录
      └─ asides/  #边栏模板目录
      └─ post/  #文章页面相应模板目录
   └─ _layouts/  #默认网站html相关文件,最底层
   └─ _posts/  #新增以及从其它程序迁移过来的数据都存在这里
   └─ stylesheets/ #css文件目录
   └─ javascripts/  #js文件目录

② 一些配置内容

关于如何配置Octopress 关于如何创建新的page或者post以及本地预览 关于如何修改主题和默认的样式 Octopress支持的第三方主题下载和预览网站 关于侧边栏和主题的定制,添加新浪微博,多说评论,分类标签云等等

[注意,使用多说的话,shortname不是你的个人资料中的名称,而是新建的站点给定的!另外,对于这里提到的升级问题,可以干脆直接删除data-title]

最有用的资料总能在这里找到:Octopress的官方文档

③ 关于Jekyll

Octopress是基于Jekyll的,所以对Jekyll有一定的了解是很有必要的,Jekyll主页中记录了Jekyll的方方面面,最好是了解下Directory Structure,Configuration,Writing Posts,Creating Pages等等内容,这对后面的Octopress的使用会有很大帮助的。

④ 关于本地编写博客

对于Markdown编辑器,我觉得Mou可能不是最好的,但是,它是很精巧的!我简直爱不释手,希望之后能够在我的博客中实现数学公式的编辑,这样会很方便,哈哈

哦了,今天就到这里啦!哈哈哈,晚安,Octopress!^_^

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2013/11/17,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档