##0.背景
准备重新捡起博客,记录自己的生活,特别是技术生活(过于私密的东西,也不敢往博客上放不是)。个人博客有两个途径:a.使用已有的博客网站; b.搭建自己的私人网站。调研了一下国内博客网站,(CSDN、javaEye、OSCHINA等)普遍文字格式、代码编排样式不是很喜欢(太挑剔了?对,我就是一个挑剔的人),这让自己转向私人博客。可以预想到,自己搭建要稍微复杂一点,话又说回来了,作为software engineer
折腾网站也算看家本领了(我会告诉你我的目标是scientist
么)。
既然要搭自己的私人博客,那选定什么框架/方案呢?之前使用WordPress搭过,但需要购买域名和空间;现在流行在GitHub上搭,并且不需要考虑域名和空间的问题,那就他了,上GitHub,走起(其实,国内也有一个类似的地方GitCafe,不过,出于装B需要,最终选定了GitHub)。
##1.做什么?
目标:私人博客、自己搭建。
方式:GitHub Pages
##2.怎么做?
初步分析,在GitHub上搭建博客,实质是:将自己的博客内容上传到GitHub上(因为GitHub提供了空间);如果需要修改博客内容,则需要从GitHub上将download/pull下来;接下来就是让外面可以访问GitHub上的博客。总结一下,对应3个必要步骤:
- GitHub上创建工程、并且能够将GitHub上的文件/代码,下载到本地;
- 将本地的文件/代码,上传到GitHub上;
- 配置GitHub,使其对外提供私人博客的访问页面;
好了,上面是凭空想出来的(任何地方搭建博客,都是上面的逻辑步骤,而不仅限于GitHub);那实际如何操作呢?具体分为4个阶段:
- 熟悉GitHub的基本操作(创建工程、上传代码、下载代码);
- 利用GitHub Pages功能,搭建简易网站;
- 利用jekyll,增强网站功能(除了jekyll,还有其他的方式);
- 在jekyll框架下,依照个人偏好,进行定制;
##3.实际操作
###3.1GitHub的基本操作
补充:上传文件至GitHub;另外,向GitHub提交代码时,按照上面的操作方式,需要每次都输入GitHub的用户名和密码,可以采用SSH Keys
的方式来解决此问题。
###3.2如何搭建博客?
GitHub上对于个人博客的支持,实质是利用GitHub Pages功能来实现的,具体操作:GitHub Pages,认真读一遍,5mins,一步一步操作下来,简易博客就搭建成功了(一个简单的欢迎页面index.html
)。
补充:扩展阅读GitHub Pages FAQ.
###3.3Jekyll增强博客网站功能
详细阅读”3.2如何搭建博客“中提到的GitHub Pages的童鞋,在GitHub Pages页面最下端一定注意到了Blogging with Jekyll,对,就是他,读一遍,操作一下,搞定。
补充:jekyll用起来倒是用起来了,怎么发表一遍博文呢?这个…额…等到学会 “3.4 基于jekyll框架,定制博客” 再去写博客吧,现在建议把上面的操作反复看两遍,捋一捋逻辑流程。
###3.4基于jekyll框架,定制博客
先看一下两个使用jekyll框架的博客:BeiYuu & Havee,他们对应的模版在GitHub上都可以找到:BeiYuu.com Template of GitHub & Havee.me Template of GitHub。
先膜拜一下上面两个博客模板,光彩夺目,亮瞎一双狗眼,好了,我能不能也搭建一个类似的博客?途径有一个:深入学习一下Jekyll的官方文档,补充:中文版本。(基于jekyll,如何定制博客,我将写一篇详细的介绍,敬请期待)
###3.5绑定域名
几点:
- 购买域名
- GitHub上绑定域名:
- 创建CNAME
- 从GitHub Help 上搜索
custom domain
TODO:整理GitHub上域名配置的基本原理:
- 整理A、C域名的区别
- …
##4.FAQ
###4.1使用google analytics来统计网站访问情况
- 注册Google Analytics账户;
- 在账户下,添加要监控的网站信息,Google Analytics会生成跟踪信息的JS片段;
- 将上述JS片段插入到自己想要统计的页面上;
具体设置细节:请查看官方文档。
####TODO:使用百度统计,替代google analytics
TODO:单独写一篇文章,关注几点:如何配置、基本原理。
参考资料:
- http://www.williamlong.info/archives/2214.html
- http://lusongsong.com/reed/548.html
###4.2如何DISCUS作为评论插件?
- 注册DISQUS账户;
- 登录后,点击
Add Disqus to your site
按钮,操作下去,最终将获得相应的JS片段; - 将上述JS片段插入到自己想要包含评论的页面即可;
###4.3配置网站,支持LaTeX语法
配置博客,支持LaTeX公式,此次设置kramdown来解析Markdown文件。
/*
If you have sufficient control over the publishing process
(e.g. you are running Jekyll yourself), an easy solution is
to switch the markdown parser to one that supports TeX.
*/
//For example, using kramdown:
gem install kramdown
//Change the markdown line in _config.yml to
markdown: kramdown
//and add something like
<script type="text/javascript"
src="http://cdn.mathjax.org/mathjax/latest/MathJax.js?config=TeX-AMS-MML_HTMLorMML">
</script>
//to _layouts/default.html.
//Now you can simply mark any mathematics in your posts with $$
原文链接:Using MathJax with Jekyll
###4.4遇到的问题&解决办法?
- 执行Git命令时,出错提示:(fatal: remote origin already exists.)
- GitHub上markdown的解析引擎不同,会造成最终页面效果的差异
- jekyll serve启动出错提示:(Liquid Exception: invalid byte sequence in GBK)见下文
修改\Ruby200\lib\ruby\gems\2.0.0\gems\jekyll-1.0.3\lib\jekyll
目录下的convertible.rb
文件,将其中:
self.content =File.read(File.join(base, name))
修改为:
self.content =File.read(File.join(base, name),:encoding=>"utf-8")
如果上述修改之后,仍然提示出错,则:...\lib\jekyll\tags
目录下include.rb
文件,类似对于convertible.rb
文件的操作;
转自:
http://ningg.top/build-blog-with-github
相关推荐
Github提供了Github Pages服务,用于为项目建立介绍站点,也可以用来建立个人博客。 知识点二:Github Pages的优点 Github Pages有以下优点: 1. 轻量级的博客系统,没有复杂的配置。 2. 使用标记语言,如Markdown...
使用github搭建的个人博客
**Coisas:GitHub上的静态网站客户端CMS** Coisas是一款基于JavaScript开发的内容管理系统(CMS),特别设计用于托管在GitHub上的静态...对于个人博主、小团队或希望快速建立网站的用户来说,Coisas是一个理想的选择。
3. **GitHub 个人仓库**: 在 GitHub 上创建一个以自己的用户名加 `.github.io` 的仓库,如 `guanbaisheng.github.io`。 #### 二、安装必备软件 1. **Git**: 访问 [Git 官方网站](https://git-scm.com/download) ...
【GitHub搭建图床】是指利用GitHub的存储空间...通过以上步骤,就可以利用GitHub搭建个人图床,并使用PicGo工具进行高效上传和管理。这种方式既经济又便捷,尤其适合程序员和博客作者,确保图片在互联网上的稳定访问。
### 使用GitHub搭建Maven私库 #### 背景与目的 随着软件开发项目的增多和个人技术积累的增长,很多开发者会有构建个人Maven私库的需求。这样不仅能够方便地管理自己开发的各种组件、库或者工具,还能高效地进行...
- 学会在Linux环境下配置安装hexo及GitHub - 学会使用hexo进行搭建网页 ...## 设计一个在GitHub上可以发布和阅读文章的个人博客网站,使用Hexo进行搭建,使其可以发布文章。并在Linux环境下实现运行
本文将详细讲解如何利用GitHub搭建个人Maven仓库,并将其配置为你的项目依赖源。 首先,我们需要理解Maven仓库的工作原理。Maven仓库是用来存储构建项目所需的各种依赖的,包括JAR包、POM文件等。这些仓库可以是...
下面将详细阐述Hexo和GitHub搭建个人博客的过程及关键知识点。 1. **Hexo基本概念** - **站点结构**:Hexo站点通常包含`source`、`themes`、`public`、`config.yml`等目录,每个都有特定功能,如`source`存放内容...
hexo-Github搭建个人博客.md
- **GitHub Pages**:免费搭建静态网站,展示项目或个人作品。 ### 7. 学习资源 - **GitHub Learning Lab**:官方提供的互动式教程,帮助你逐步学习GitHub。 - **GitHub Docs**:详尽的官方文档,解答所有关于...
这里,我们主要讨论与HTML相关的知识,以及如何在GitHub上建立个人网站。 HTML(HyperText Markup Language)是网页制作的基础,它是一种标记语言,用于定义网页的结构和内容。HTML由一系列元素组成,这些元素以...
在GitHub上建立个人网站,开发者通常会利用静态网站生成器(如Jekyll、Hugo或Gatsby)或者直接编写HTML、CSS和JavaScript代码来构建站点。 【标签】"HTML"表明了这个项目的核心技术之一是HTML(超文本标记语言),...
标题中的"adam-lynch.github.io:个人网站...即将推出"表明这是一位名为Adam Lynch的开发者或设计师的个人网站项目,即将在...如果你对个人网站搭建、前端开发或者GitHub Pages的使用感兴趣,这是一个很好的学习案例。
仓库的名字一般设置为你在GitHub Pages上的用户名.github.io,因为GitHub Pages会默认使用这个名字的仓库来发布你的网站。记得在仓库设置里开启GitHub Pages功能,并选择源代码分支为主分支。 现在,我们可以在本地...
在这里,你需要输入`git clone [刚才建立的新网址]`,这里的`[刚才建立的新网址]`就是你在GitHub上创建仓库时得到的URL。执行这个命令后,会在本地创建一个与远程仓库对应的副本。 完成克隆操作后,你可以将所有要...
GitHub + PicGo + Typora 搭建个人图床详细教程(个人博客)
总的来说,`codeinpink.github.io`展示了如何利用GitHub Pages和Jekyll建立一个美观且实用的个人网站。通过学习这个项目的源码,我们可以了解到静态网站的构建过程,以及如何有效地展示个人品牌和技能。无论你是...
【描述】:迈克尔·戴维森的个人网站是利用Jekyll这个静态站点生成器搭建的。Jekyll是一个开源项目,由Ruby语言编写,它允许用户将文本格式的内容转化为静态HTML和CSS,适合用于创建博客、个人网站或项目文档等。...
标题 "markmingjie.github.io:GitHub页面上的个人学术网站" 提示我们,这是一个基于GitHub的个人学术站点。GitHub是一个开源代码托管平台,用户可以创建并分享自己的项目,同时利用其强大的版本控制功能进行协作。在...