Jekyll搭建github个人博客
一、安装ruby环境
Windows下载地址: http://rubyinstaller.org/
Ruby官网: http://www.ruby-lang.org/zh_cn/
下载安装即可
环境配置
安装好之后必须配置环境变量
在环境变量中PATH字段中增加 你的安装路径\Ruby22-x64\bin 比如 : D:\ProgramFiles\Ruby22-x64\bin
除此之外还必须新增一个字段 SSL_CERT_FILE,内容为cacert.pem所在路径,比如D:\ProgramFiles\Ruby22-x64\cacert\cacert.pem
cacert.pem下载地址: https://curl.haxx.se/ca/cacert.pem
检测安装
ruby -v
gem -v
如果顺利打印出版本号则安装成功
替换rubyGem库地址
如果使用gem安装软件较慢,可以尝试替换gem源为国内的源
gem sources --remove https://rubygems.org/
gem sources -a https://gems.ruby-china.org/
gem sources -l
淘宝源:
gem sources -a https://ruby.taobao.org/
遇到 SSL 证书问题
如果遇到 SSL 证书问题,你又无法解决,请直接用 http://gems.ruby-china.org 避免 SSL 的问题
D:\MyBlog\RubyDevKit>gem sources -l
*** CURRENT SOURCES ***
http://gems.ruby-china.org/
二、安装RubyDevKit
DevKit是windows平台下编译和使用本地C/C++扩展包的工具。它就是用来模拟Linux平台下的make,gcc,sh来进行编译。但是这个方法目前仅支持通过RubyInstaller安装的Ruby
下载地址: http://rubyinstaller.org/downloads/
双击运行解压到D:\MyBlog\RubyDevKit (路径可自行定义)。
打开终端cmd,输入如下命令进行安装:
cd D:\MyBlog\RubyDevKit
ruby dk.rb init
接下来需要在D:\MyBlog\RubyDevKit\config.yml 这个文件里面配置Ruby的路径,如下:
- D:/ProgramFiles/Ruby22-x64/bin
在cmd中执行如下命令进行安装:
ruby dk.rb install
三、安装必要的gem包
gem install jekyll
gem install rails
gem install bundler
四、创建jekyll博客
jekyll new myBlog
cd myBlog
jekyll server

在浏览器输入http://127.0.0.1:4000/

报错排查
端口被占用
D:\GarryBlog>jekyll server
Configuration file: D:/GarryBlog/_config.yml
Configuration file: D:/GarryBlog/_config.yml
Source: D:/GarryBlog
Destination: D:/GarryBlog/_site
Incremental build: disabled. Enable with --incremental
Generating...
done in 0.252 seconds.
Please add the following to your Gemfile to avoid polling for changes:
gem 'wdm', '>= 0.1.0' if Gem.win_platform?
Auto-regeneration: enabled for 'D:/GarryBlog'
Configuration file: D:/GarryBlog/_config.yml
jekyll 3.3.1 | Error: Permission denied - bind(2) for 127.0.0.1:4000
解决方案:
这个错误是告诉我们4000端口被占用,解决方法是:
在_config.yml文件的末尾加上port: 5000,改为5000端口即可。
这样在浏览器中输入http://127.0.0.1:5000/ 就可以看到自己的博客了。
五、安装git环境
下载地址: https://git-for-windows.github.io/
安装完成后运行Git Bash。在打开的窗口中输入如下命令设置你的git用户名和邮箱:
$ git config --global user.name "{username}" // 用你的用户名替换{username}
$ git config --global user.email "{name@site.com}" // 用你的邮箱替换{name@site.com}
SSH配置:
为了和Github的远程仓库进行传输,需要进行SSH加密设置。
$ ssh-keygen -t rsa -C"{name@site.com}" // 用你的邮箱替换{name@site.com}
一路敲回车即可,在C:\Users\admin.ssh 目录下会生成id_rsa 和 id_rsa.pub 两个文件,其中 id_rsa 是私钥,需要保密, id_rsa.pub 是公钥,无需保密。
在浏览器中登录你的github帐号,点击右上角的Setting-SSH and GPG keys,在SSH Key中添加 id_rsa.pub里的内容,然后点击addkey即可,这样SSH配置就完成了。
六、部署到GitHub Pages
建议基于jekyll的个人博客有两种路线:
自己学习Jekyll教程和网页设计,设计绝对自我基因的网页。
Fork已有的开源博客仓库,在巨人的肩膀上进行符合自我的创作。
路线一
新建一个与自己github用户名相同的仓库,仓库名为 {github用户名}.github.io
如 : quanzaiyu.github.io

配置github pages


选择自己喜欢的github主题

在浏览器输入 {github用户名}.github.io 即可访问自己的个人博客
如果想要使用jekyll搭建个人博客,先将此仓库clone到本地,使用上述方法创建个人博客再发布到github即可
路线二
在网上搜索jekyll 网站模版,挑选一个你看上的,比如
https://github.com/leopardpan/leopardpan.github.io
https://github.com/mzlogin/mzlogin.github.io
点击链接进入后,点击左上角的fork
在你的主页中点击刚fork的分支,点击进入
点击“Settings”,将“Repository name”改为 {你的Github用户名}.github.io,点击“Rename”。
- 注意: 一定必须是自己的Github用户名

此时你会发现已经可以通过 https://{你的Github用户名}.github.io
比如我的: https://quanzaiyu.github.io/
七、同步博客
同步仓库
在Git Bash中切换到你想存放blog文件的目录下:
cd D:\GarryBlog
输入如下命令,将远程仓库克隆到本地:
git clone https://github.com/Garry2016/garry2016.github.io.git
撰写博文
打开本地仓库的 _posts 文件夹,你的所有博文都将放在这里,写新博文只需要新建一个标准文件名的文件,在文件中编写文章内容。 比如我们fork的模版中 _posts 文件夹里有一篇 2016-03-23-hello-world.markdown,你的文件命名也要严格遵循 年-月-日-文章标题.文档格式 这样的格式,尤其要注意月份和日期一定是两位数。
推荐使用Markdown语言写文章,windows下推荐MarkdownPad这个软件编写Markdown文本。
最开始写可以直接模仿别人的博文语法,更多Markdown语法可参考 认识与入门Markdown。
提交修改
当你使用Git Bash对你的本地仓库进行操作时,先用 cd 命令将你的工作目录设置到你要操作的本地仓库
$ cd {你刚才clone下来的项目文件夹路径}
每当你对本地仓库里的文件进行了修改,只需在Bash中依次执行以下三个命令即可将修改同步到Github,刷新网站页面就能看到修改后的网页:
$ git add .
$ git commit -am "statement" //此处statement填写此次提交修改的内容,作为日后查阅
$ git push origin master
实时查看本地修改的内容
我们本地已经安装好了jekyll环境,我们可以输入 jekyll server启动服务,然后在浏览器中查看本地修改内容,方便快捷!
好了,使用jekyll搭建个人博客就写完了,还涉及一些内容这里没讲,比如评论,分享等功能。我们fork的博客里面已经实现了这些功能,大家去看源码应该就可以知道了。
Jekyll搭建github个人博客的更多相关文章
- 使用Hexo搭建Github静态博客
1. 环境环境 1.1 安装Git 默认配置就好 1.2 安装node.js 下载:http://nodejs.org/download/ 安装时直接保持默认配置即可. 2. 配置Github 1.1 ...
- 一站式搭建 GitHub Pages 博客 (一)
本文将详细讲解如何快速搭建 GitHub Pages 博客页面 关于博客主题,博客信息更改,上传文章等将会在 一站式搭建 GitHub Pages 博客 (二) 中进行详细讲解 准备阶段 注册 Git ...
- 使用hexo搭建github.io博客(一)
使用github.io可以搭建一个自己的博客,把静态文件项目托管到github上,可以写博客,可以使用markdown语法,也可以展示作品.灵活性高.但是有较大的难度. node,git版本变化日新月 ...
- Hexo搭建Github静态博客
1. 环境环境 1.1 安装Git 请参考[1] 1.2 安装node.js 下载:http://nodejs.org/download/ 可以下载 node-v0.10.33-x64.msi 安装时 ...
- 如何搭建github+hexo博客-转
1.前言 其实早在这之前我就一直想过写博客,但由于种种原因一直没有去学习这方面的知识,最近半个月(从开始动手到搭建好)一直陆陆续续的在着手这方面的工作.从开始到搭建完成的过程中遇到了很多困难,因为在这 ...
- 使用Github pages+jekyll搭建自己的博客(windows版)
最近突发奇想,想试试GitHub pages来搭建博客.网上一搜一大堆,嗯...看来还是挺简单的...于是自己撸起袖子干...... 结果对于我这种GitHub注册过,git 没用过,ruby.jek ...
- 使用Hugo搭建GitHub个人博客
主题概况 Hugo 是一个用 Go 语言编写的静态网站生成器.类似的静态网站生成器还有Jekyll.hexo等等.以上生成器都使用过,但感觉要么环境麻烦,要么生成静态页面步骤繁琐以及生成缓慢.如果你正 ...
- 搭建 github.io 博客站点
前言 很多人都有搭建博客或知识库站点的想法,可自己买云服务器太不划算,部署管理也是个问题:基于免费又热门的 GitHub Pages 来搭建博客站点倒是省钱省力省事的好办法,于是上网一搜,满屏都是关于 ...
- 从零开始搭建GitHub个人博客--第一步
最近一段时间工作不是很忙,便开始着手整理博客并梳理自己的简历 可是,打开cnblog后第一眼我便开始了纠结~ 原起: 一直在cnblog写博客,看博客,突然发现这种在线纯文档记录的方式俨然跟不上时代的 ...
随机推荐
- oracle里的tns是什么意思
参考http://www.jb51.net/article/44668.htm TNS简要介绍与应用 Oracle中TNS的完整定义:transparence Network Substrate透明网 ...
- 【Python】zip文件密码破解
掌握基础语法后,尝试使用python的zipfile模块练手. zipfile是Python里用来做zip格式编码的压缩和解压缩的. 这里将大体的思路分解成四段代码,逐一完善功能: 第一段代码:解压z ...
- Python3学习笔记16-错误和异常
使用try...except可以处理异常 异常处理 import sys try: print('try...') r = 10/0 print('result:',r) except ZeroDiv ...
- SSH原理与运用:远程登录
一.什么是SSH? 简单说,SSH是一种网络协议,用于计算机之间的加密登录. 如果一个用户从本地计算机,使用SSH协议登录另一台远程计算机,我们就可以认为,这种登录是安全的,即使被中途截获,密码也不会 ...
- Java SSH远程执行Shell命令、shell脚本实现(Ganymed SSH)
jar包下载地址: http://www.ganymed.ethz.ch/ssh2/ 此源码的好处就是没有依赖很多其他的包,拷贝过来干干净净.具体代码实现可以看下文,或参考官方文档,在下载的压缩包里g ...
- bzoj 1803: Spoj1487 Query on a tree III(主席树)
题意 你被给定一棵带点权的n个点的有根数,点从1到n编号. 定义查询 query(x,k): 寻找以x为根的k大点的编号(从小到大排序第k个点) 假设没有两个相同的点权. 输入格式: 第一行为整数n, ...
- php中相对路径和绝对路径如何使用(详解)
目录 一.总结 一句话总结: 1.php中用用“/”表示根目录么? 2.什么符号表示当前目录(asp,jsp,php都一样)? 3.php中如何使用$_SERVER['DOCUMENT_ROOT']做 ...
- excel导出的时候从程序后台写到excel里的是文本,所以无法在excel中计算怎么办?
文章引用自:http://www.cnblogs.com/rayray/p/3414452.html excel导出的时候从程序后台写到excel里的是文本,所以无法在excel中计算怎么办? 需要导 ...
- 基于GTID环境的数据恢复
下面说一个线上环境的数据恢复案例,线上环境误操作的事情,随时都有可能发生的,这时候运维DBA或者DBA会想,没人会傻到把数据库干掉的吧?又或者没有会闲得蛋痛删除了几条数据又想恢复这么无聊吧?适适这样的 ...
- python 全栈开发,Day73(django多表添加,基于对象的跨表查询)
昨日内容回顾 多表方案: 如何确定表关系呢? 表关系是在2张表之间建立的,没有超过2个表的情况. 那么相互之间有2条关系线,先来判断一对多的关系. 如果其中一张表的记录能够对应另外一张表的多条记录,那 ...