I recently wanted to publish my Jekyll site on Github pages, but it seems that putting everything in a subdirectory is giving some issues, even after I change the source
to the correct directory.
My structure looks like this:
- site
- src (contains all Jekyll stuff)
- README.md
- GruntFile.js
- ...
Locally my site builds perfectly and when I go to http://localhost:4040
I can see it just nicely, but when I commit this to my Github and visit username.github.io
I get a 404, if I go to username.github.io/src
I can see part of my site, however all {% include %}
are ignored.
In my _config.yml
I updated the source: source: ./src
, but that doesn't seem to help.
Is there a way to make Github Pages handle subdirectories properly? Basically I want to tell it that my Jekyll site is inside /src
, and I want the url to just be username.github.io
instead of username.github.io/src
I know i can use the pages branch and commit to there, but I would prefer if it could happen automaticly.
If it helps anyone, I attempted to run Jekyll on GH Pages from a subdir (and modified source
) and was banging my head against the wall over these errors:
A file was included in
subdir/index.html
that is a symlink or does not exist in your_includes
directory. For more information, see https://help.github.com/articles/page-build-failed-file-is-a-symlink.
After much searching on this, the definitive answer was right there in the docs:
Configuration Overrides
We override the following
_config.yml
values, which you are unable to configure:safe: true lsi: false source: your top-level directory
Keep in mind that if you change the
source
setting, your pages may not build correctly. GitHub Pages only considers source files in the top-level directory of a repository.
I contact Github support and they gave me 2 solutions.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With