github是否尊重Jekyll"来源"变量?

时间:2014-09-08 07:42:40

标签: github jekyll github-pages

为了让我的工作流程更整洁,我遇到了源标签,它允许我主持我的工作"开发工作"在与我的_site不同的文件夹中。

这很棒,但Github页面似乎没有兑现它?我觉得我做错了,所以只是想检查一下。我无法在网上找到很多相关信息。

在这种情况下,我并没有明确需要github来做这件事,但是对于依赖github页面的项目来说,拥有这个一致的工作流程会很棒。

谢谢!

2 个答案:

答案 0 :(得分:1)

答案 1 :(得分:0)

您无需更改来源目的地参数即可单独对其进行版本控制。您可以在同一存储库中的两个不同分支中对它们进行版本控制。

为什么要在不同的分支机构进行版本控制?

如果你需要一些不能在gh页面上运行的插件(生成器,标签......)或构建任务(gulp,grunt,...),你必须在分支中发布你的Jekyll源代码,你的构建会产生一个单独的分支。

对于用户/组织网站,网站构建将为,代码为来源(或您喜欢的任何名称)。用户/组织站点将在github.com/userName/userName.github.io上进行版本控制,并在http://userName.github.io(或使用自定义域)托管

对于项目网站,网站构建将为 gh-pages ,代码为 master (或您喜欢的任何名称)。 项目站点将在github.com/userName/projectName上进行版本控制,并在http://userName.github.io/projectName托管。

用户\组织网站的步骤

  1. 在github上创建一个存储库(例如:https://github.com/userName/userName.github.io

  2. 转到命令行并cd pathTo/yourJekyllSource

  3. git init

  4. git remote add origin git@github.com:userName/userName.github.io.git

  5. jekyll new .创建代码库

  6. _config.yml
  7. ,将baseurl参数设置为 baseurl:''

  8. .gitignore 中添加 _site
  9. ,它将在 gh-pages 分支中进行版本化

  10. jekyll build将创建 _site 目标文件夹并在其中构建网站。

  11. git checkout -b sources

  12. git add -A && git commit -m "jekyll base sources"提交您的源代码

  13. git push origin sources来源分支中推送您的来源

  14. cd _site

  15. touch .nojekyll,此文件告诉gh-pages不需要处理文件

  16. git init

  17. git remote add origin git@github.com:userName/userName.github.io.git

  18. git checkout master

  19. git add -A && git commit -m "jekyll first build"提交您的网站代码

  20. git push origin master

  21. 你的好去!

    您可以按照以下方式进行部署:

    cd pathTo/yourJekyllSource
    jekyll build
    git add -A
    git commit -m "your commit message"
    cd _site
    git add -A
    git commit -m "your commit message"
    

    项目网站的步骤为described here ,我已经 automation Rakefile ,它可以通过设置完成所有工作部署。

    享受!