我想在Github页面上托管一个用户网站和多个项目网站,即
- 用户名.github.io
- 用户名.github.io/project1
- 用户名.github.io/project2
我希望他们共享一组通用的jekyll文件,这样更容易更改主题、信息等。有人做到了吗?使用子树/子模块没有太大帮助,因为您无法覆盖source配置选项来更改jekyll源文件的位置。Github Pages总是强制源位于根目录中。您可以更改_includes和_layouts所在的位置,但这并不太有用。有什么建议或例子吗?
使用username.github.ui/base
作为基本模板的存储库。这不应该是一个gh页面。
这个存储库应该包含一个包含基本模板的分支。目前,我认为您正在使用master
分支。分支并在此回购中创建一个project1
和project2
分支。
每次更改基本模板时,请在master
分支中进行更改,然后将主分支合并为project1
和project2
。
在本地克隆base
repo,并将project1
和project2
都添加为远程。
然后简单地执行git push project1 project1:gh-pages
,将本地project1
分支推送到第一个项目gh页面分支。
这仍然会使文件成倍增加,但这意味着你可以很容易地保持它们的同步。更改基本模板如下:
git pull
项目1的gh页面分支到基础reposproject1
分支。对项目2重复此操作- 更改
base
回购中相应分支中的基本模板 - 将分支合并为
project1
和project2
分支 - CCD_ 18项目1的分支到项目1 CCD_。对#2重复上述步骤
如果你设置了一些挂钩,这可以很容易地实现自动化。