利用Octopress在github pages上搭建个人博客

SEP 29TH, 2013

在GitHub Pages上用Octopress搭建博客,需要安装ruby环境、git环境等。本人在Fedora下成功搭建Octopress,这里把主要步骤和遇到的问题做一个记录。

在搭建的过程中发现yum安装的ruby与rake在管理octopress博客的时候会引起冲突,要使用rvm的方式安装ruby和rake;另外rvm一般用curl一段脚本来安装的话,网址有所变化,原来的教程中的网址要“去掉一个点”。

1.安装rvm
curl https://rawgithub.com/wayneeseguin/rvm/master/binscripts/rvm-installer | bash -s stable
网上很多教程用raw.github这个站点,但目前需要使用去除”.“的网址

2.将rvm命令添加到系统path中
echo ‘[[ -s “$HOME/.rvm/scripts/rvm” ]] && . “$HOME/.rvm/scripts/rvm” # Load RVM function’ >> ~/.bash_profile
source ~/.bash_profile
如果不做这一步,第3步的”rvm use 1.9.3”将不起作用

3.安装ruby1.9.3 
rvm install 1.9.3 或者用2.0也可以
rvm use 1.9.3 或者用2.0也可以 
这是下载ruby和rubygem源代码后本地自动编译安装.ruby和rubygem的版本要对应,这里会自动解决。

此时,可以查看ruby版本:ruby —version 我在shell下看到的是:ruby 1.9.3p448 (2013-06-27 revision 41675) [x86_64-linux]

4.确保你装了git 
用git —version查看版本 
如果没有安装git,那就sudo yum install git-core

5.下载octopress
不要认为是网页上的“下载”,这里是用git的方式:
cd ~/workspace/blog
git clone git://github.com/imathis/octopress.git octopress
如果下载速度超慢请尝试修改hosts

6.安装bundle
cd octopress
gem install bundler
bundle install
这里很奇怪,先前bundle的时候一直报错,换成ruby.taobao.org还是报错,但这次没有修改Gemfile竟然下载安装无阻。

7.安装主题
rake install [‘theme-name’]
如果只是rake install表示安装默认主题(位于octopress/.theme)
这里如果遭遇rake install aborted错误,说rake版本不正确,因为rvm帮我们下载了0.9的版本,但是如果用yum install的话装的是10.x的版本,需要先yum remove rake。。感觉ruby的包管理机制真烦。

8.后续操作
生成模板:
rake generate

本地预览:
rake preview
可以通过127.0.0.1的4000端口查看

添加新文章
rake new_post[“文章标题”] //可以直接输入中文,Octopress 自动将汉字转换成拼音url
例如:rake new_post[“hello”]
会在source/_post/生成hello.markdown的文件
用文本编辑器打开后编辑即可。

添加新页面
rake new_page[“about”]

其他的编辑项
blog的配置信息修改: _config.ym

9.部署到github
需要先在github上建立一个repo,名字格式为username.github.io
官方主页的说明https://help.github.com/articles/user-organization-and-project-pages

然后是rake setup_github_pages
会询问你的repo的地址,填写你刚刚建立的repo的全称。
如果使用git@的形式,需要github的ssh设定过,否则会报错:
ssh-keygen
文件名取为/home/username/.ssh/github
然后就生成了key,复制/home/username/.ssh/github.pub中的内容,粘贴到github上account setting中的ssh key里面就ok了。

然后是部署:
rake deploy
如果github上比本地版本高则部署会失败,可以修改Rakefile第264行,“#”前添加“+”即可

ok,查看一下,比如我的:zchrissirhcz.github.com
可以看到octopress已经在了!

10.域名绑定
官方的帮助:https://help.github.com/articles/setting-up-a-custom-domain-with-pages 比如在godaddy买了example.com域名,然后把A记录改为 204.232.175.78(git page) 然后在本地octopress/source目录下新建CNAME文件,填写example.com
据说国外DNS容易被墙,索性换成DNSPOD好了

总结:
新建文章:rake new_page[‘文章名’]
增删改查:在octopress/source/_posts中进行
生成:rake generate 预览:rake preview 部署:rake deploy

参考:
http://beyondvincent.com/blog/2013/08/03/108-creating-a-github-blog-using-octopress/ http://easypi.github.io/blog/2013/01/05/using-octopress-to-setup-blog-on-github/ http://ginsmile.github.io/blog/2013/08/29/octopressbo-ke-ji-qiao/#.UkfO2x0W1q8http://beiyuu.com/github-pages/

利用Octopress在github pages上搭建个人博客的更多相关文章

  1. 使用jekyll在GitHub Pages上搭建个人博客【转】

    网上有不少资源,但大多是“授人以鱼”,文中一步一步的告诉你怎么做,却没有解释为什么,以及他是如何知道的.他们默认着你知道种种专业名词的含义,默认着你掌握着特定技能.你折腾半天,查资料,看教程,一步步下 ...

  2. 让搭建在 Github Pages 上的 Hexo 博客可以被 Google 搜索到

    title: 让搭建在Github Pages上的Hexo博客可以被Google搜索到 date: 2019-05-30 23:35:44 tags: 配置 --- 准备工作 搭建好的博客 npm & ...

  3. 使用Jekyll + GitHub Pages免费搭建个人博客

    使用Jekyll + GitHub Pages免费搭建个人博客 My Blog:无名の辈 | VectorX (vectorxxxx.github.io) Download Ruby:Download ...

  4. GitHub Pages + Hexo搭建个人博客网站-github风格-采坑记录

    目录 1.本机安装nodejs 2.github上创建仓库 3.安装hexo 4.hexo主题 5.配置主题 6.添加文章 7.使用分类和标签 8.增加文章目录 9.推送github 使用github ...

  5. 使用GitHub Pages+Jekyll搭建个人博客

    GitHub Pages 免费无限容量的站点数据托管工具(国内访问速度较慢),内置Jekyll服务,能将特定名称的代码仓库动态编译为静态网页 Jekyll 基于Ruby的静态网页生成系统,采用模板将M ...

  6. 使用Hexo和Github Pages快速搭建个人博客

    在编程路上,每天都在网上查看别人的博客,大牛的文章写得通俗易懂,同时博客网站也非常华丽.作为出入编程的一枚小白也想拥有这样一个自己的网站.那就立马去买一个域名了,在网上找教程来搭建. 搭建的过程还算比 ...

  7. Github Pages+Gridea搭建个人博客

    1 概述 Github Pages可以用来托管个人网站,静态的,便于用来实现博客,可以在一个仓库的settings中开启: Gridea是一个静态博客写作客户端,所有文件都在本地,没有数据库,实现简单 ...

  8. 在github上搭建个人博客并在线更新

    换博客比更博还勤的我终于决定写一篇博客搭建教程了.. FAQ Q:\(hexo\)需要本地编译.\(jekyll\)虽然可以直接上传\(md\)..但是如果在github上直接编译也太难受了叭,毕竟不 ...

  9. 如何使用 GitHub Pages 维护自己的博客

    目录 前置知识 实际操作 声明 本文地址:如何使用 GitHub Pages 维护自己的博客 前置知识 首先,你应该知道如何用 Hexo 在本地搭建一个博客系统,具体见 Hexo. 其次,我们如果想使 ...

随机推荐

  1. 详细BP神经网络预测算法及实现过程实例

    1.具体应用实例.根据表2,预测序号15的跳高成绩. 表2 国内男子跳高运动员各项素质指标 序号 跳高成绩() 30行进跑(s) 立定三级跳远() 助跑摸高() 助跑4—6步跳高() 负重深蹲杠铃() ...

  2. 二、Linux学习之centOS的的setup

    因为我是在VMware上安装的centOS,网络设置选择的是桥接模式,这样可以和实体机使用同样的网络,但是也使用同样的IP,因此就需要设置一下IP了,否则使用ifconfig查询ip的时候显示的是12 ...

  3. nginx反向代理下载文件失败处理

    最近遇到了客户在从我们的服务器下载文件失败时的情况.然后把解决方案一并整理一下以备后续.需要说明的是,我们前端都是使用nginx来做反向代理,后面的逻辑处理采用php的方式. 1.缓存目录不可写 ng ...

  4. Integer两种转int方法比较

    方法一: Integer.parseInt(); 返回的是一个 int 的值. 方法二: new Integer.valueof(); 返回的是 Integer 的对象. new Integer.va ...

  5. ASP.NET IOC之 AutoFac的认识和结合MVC的使用

    这几天研究了解发现AutoFac是个牛X的IOC容器,是.NET领域比较流行的IOC框架之一,传说是速度最快的,~ 据相关资料,相关学习,和认知,遂做了一些整理 优点: 它是C#语言联系很紧密,也就是 ...

  6. 解决spring中不同配置文件中存在name或者id相同的bean可能引起的问题

    小总结: 如果启用组件扫描,bean名称不同时,Spring将尝试创建一个bean,即使该类的bean已经在spring-config.xml中定义了. 但是,如果在spring配置文件中定义的bea ...

  7. 手把手教你使用webpack搭建vue框架

    我们在使用vue开发项目的时候,都是用vue-cli直接来搭建的.但是这是别人已经造好的轮子,我们既然要使用别人造好的轮子,我们总不能知其然而不知其所以然.所以呢,我这边文章就教你如何使用webpac ...

  8. [洛谷P2444] [POI2000]病毒

    洛谷题目链接:[POI2000]病毒 题目描述 二进制病毒审查委员会最近发现了如下的规律:某些确定的二进制串是病毒的代码.如果某段代码中不存在任何一段病毒代码,那么我们就称这段代码是安全的.现在委员会 ...

  9. [转] malloc基本实现

    任何一个用过或学过C的人对malloc都不会陌生.大家都知道malloc可以分配一段连续的内存空间,并且在不再使用时可以通过free释放掉.但是,许多程序员对malloc背后的事情并不熟悉,许多人甚至 ...

  10. TensorFlow在win10上的安装与使用(二)

    在上篇博客中已经详细的介绍了tf的安装,下面就让我们正式进入tensorflow的使用,介绍以下tf的特征. 首先tf有它独特的特征,我们在使用之前必须知晓: 使用图 (graph) 来表示计算任务, ...