用git和jekyll来发表文章,并同步到github

我的原文链接: http://feiyuliu.github.com/github/2012/12/04/how-to-use-git-to-post-articles.html

        可以使用下面的命令来创建文章

        发布日志前,先在配置文件_config.yml中设置URL格式

$permalink: /:year/:month/:title.html

        其他格式参考: https://github.com/mojombo/jekyll/wiki/Permalinks

$rake post title="about this blog" //这个名字将会在url中呈现,所以尽量短些好
 (in d:/github/feiyuliu.github.com)
  Creating new post: ./_posts/2012-12-05-about-this-blog.md

        到_post目录下找到刚才建立的文件,然后编辑文件。设置title,description,category,tags等,再就是用markdown来写文章了。

$rake page name="about.md"
Creating new page: ./about.md

        创建一个嵌套的页面

$rake page name="pages/about.md"
Creating new page: ./pages/about.md

        创建一个路径页面

$rake page name="pages/about"
Creating new page: ./pages/about/index.html

        Jekyll也提供了许多预设的页面例子,以供参考.你可以学习和按自己的需要自定义它.注意:如果用notpad++来编辑时,要设置文件的格式为 “以UTF-8无BOM格式编码” 否则提交会出现乱码情况

        编辑完成后要先在本地预览一下,再提交到github。一般使用jekyll内置的服务器,运行一下代码:

$jekyll --server --auto

        页面没有问题后可以提交:

$git add .
$git commit -m "post a article about how to post a article"
$git push origin master

        如果在目录下删除了某个文件,得用git删除才能够在github上看到删除的结果,否则只是本地删除了,github上没有删除。删除文件后要提交,代码如下:

$git rm -rf XXX.md
$git commit -m "comment"
$git push origin master

1.打开浏览器出现GBK编码错误

        打开Git Bash后运行 jekyll –server –auto在本地测试时出现一下错误

Liquid error: invalid byte sequence in GBK

        这个问题是在 Windows 下出现的,英文博文没问题,中文博文就会报错,原因是你所使用的控制台并不能工作 UTF-8。

        临时:在执行 jekyll 命令前,将当前控制台的代码格式转为 UTF-8:

$export LC_ALL=en_US.UTF-8
$export LANG=en_US.UTF-8
$jekyll --server --auto

        永久:添加两对用户自定义的环境变量,LC_ALL=en_US.UTF-8 和 LANG=en_US.UTF-8

2.运行jekyll –server时出现的编码问题

"Ruby193/lib/ruby/gems/1.9.1/gems/jekyll-0.11.2/lib/jekyll/convertible.rb:29:in ‘read_yaml’: invalid byte sequence in GBK (ArgumentError)"

        找到ruby目录下gems/jekyll-0.11.0/lib/jekyll/convertible.rb29行修改为下面的内容

self.content = File.read(File.join(base, name), :encoding => "utf-8")

转载于:https://www.cnblogs.com/feiyuliu/archive/2012/12/07/2806431.html

上一篇:javascript – gulp观看并重新加载jekyll,sass,js


下一篇:重学js之JavaScript 面向对象的程序设计(创建对象)