为了让我的工作流程更整洁,我遇到了源标签,它允许我主持我的工作"开发工作"在与我的_site不同的文件夹中。
这很棒,但Github页面似乎没有兑现它?我觉得我做错了,所以只是想检查一下。我无法在网上找到很多相关信息。
在这种情况下,我并没有明确需要github来做这件事,但是对于依赖github页面的项目来说,拥有这个一致的工作流程会很棒。
谢谢!
答案 0 :(得分:1)
GH页面覆盖了Jekyll配置文件中的源设置: https://help.github.com/articles/troubleshooting-github-pages-build-failures#source-setting
答案 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托管。
在github上创建一个存储库(例如:https://github.com/userName/userName.github.io)
转到命令行并cd pathTo/yourJekyllSource
git init
git remote add origin git@github.com:userName/userName.github.io.git
jekyll new .
创建代码库
,将baseurl参数设置为 baseurl:''
,它将在 gh-pages 分支中进行版本化
jekyll build
将创建 _site 目标文件夹并在其中构建网站。
git checkout -b sources
git add -A && git commit -m "jekyll base sources"
提交您的源代码
git push origin sources
在来源分支中推送您的来源
cd _site
touch .nojekyll
,此文件告诉gh-pages不需要处理文件
git init
git remote add origin git@github.com:userName/userName.github.io.git
git checkout master
git add -A && git commit -m "jekyll first build"
提交您的网站代码
git push origin master
你的好去!
您可以按照以下方式进行部署:
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 ,它可以通过设置完成所有工作部署。
享受!