Solved Github Pages: Unexpected Content Error on Push
I have a theme I'm running at github,
It works correctly there.
When I clone the repo locally, set the GitHub pages app as an upstream, and try to push, I get an "Unexpected Content" error in GitKraken.
![0_1589341153583_Annotation 2020-05-12 233504.jpg](Uploading 100%)
Error in git after running $ git push page master
Enumerating objects: 321, done.
Counting objects: 100% (321/321), done.
Delta compression using up to 16 threads
Compressing objects: 100% (164/164), done.
Writing objects: 100% (321/321), 1.85 MiB | 6.23 MiB/s, done.
Total 321 (delta 154), reused 319 (delta 152)
remote: Resolving deltas: 100% (154/154), done.
remote: /bin/bash: warning: setlocale: LC_ALL: cannot change locale (en_US.UTF-8)
remote: Publishing website
remote: => Cleanup build path
remote: => Checkout repo
remote: => Remove Gemfile.lock
remote: => jekyll build
/home/cloudronis not writable.
remote: Bundler will use
/tmp/bundler20200513-136-qkorp9136' as your home directory temporarily. remote: fatal: not a git repository: '.' remote: /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler/resolver.rb:290:inblock in verify_gemfile_dependencies_are_found!': Could not find gem 'jekyll (~> 4)' in any of the gem sources listed in your Gemfile. (Bundler::GemNotFound)
remote: from /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler/resolver.rb:258:in
each' remote: from /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler/resolver.rb:258:inverify_gemfile_dependencies_are_found!'
remote: from /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler/resolver.rb:49:in
start' remote: from /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler/resolver.rb:22:inresolve'
remote: from /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler/definition.rb:258:in
resolve' remote: from /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler/definition.rb:170:inspecs'
remote: from /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler/definition.rb:237:in
specs_for' remote: from /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler/definition.rb:226:inrequested_specs'
remote: from /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler/runtime.rb:101:in
block in definition_method' remote: from /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler/runtime.rb:20:insetup'
remote: from /var/lib/gems/2.5.0/gems/bundler-2.1.4/lib/bundler.rb:149:in
setup' remote: from /var/lib/gems/2.5.0/gems/jekyll-3.8.5/lib/jekyll/plugin_manager.rb:50:inrequire_from_bundler'
remote: from /var/lib/gems/2.5.0/gems/jekyll-3.8.5/exe/jekyll:11:in
<top (required)>' remote: from /usr/local/bin/jekyll:23:inload'
remote: from /usr/local/bin/jekyll:23:in `<main>'
! [remote rejected] master -> master (pre-receive hook declined)
error: failed to push some refs to 'https://rimmer.cloud/_git/page'
@will Looks like a packaging bug. I can reproduce the error, looking into it.
@girish Any update on this? Its a show stopper for my page deployment.
@will Forgot to update on this one. The issue is related to the use of jekyll 4 (in the gemfile). Are you able to reduce usage to jekyll 3? I think it should work after that.
I will look into updating the app to support Jekyll 4. (it seems one cannot install jekyll 3 and 4 side by side?). Or maybe it's possible with some rbenv trick.
@girish No clue, I stole this theme off of a "Easy Jekyll themes site"
@girish Shouldn't the GitHub pages app be using the latest versions of Jekyll that github pages uses to maintain compatability?
@will Initially, I thought this was about adding Jekyll 4 support but turns out it's not.
Essentially, github-pages is a gem which pins the jekyll version to 3.8.5 - https://pages.github.com/versions/ and https://rubygems.org/gems/github-pages . Now the jekyll project has released a v4. The github pages does not actually support Jekyll 4 - See https://github.com/github/pages-gem/issues/651 .
I was able to deploy your site by simply removing Gemfile before I did a jekyll build but I am not sure if this is the correct fix. But I am getting closer to the correct fix.
@will I pushed a new version now which I think should fix your issue. Can you confirm?
I had dig into ruby madness to see if the fix was correct. https://git.cloudron.io/cloudron/githubpages-app/-/issues/1 for the curious.
@girish Updated. Will confirm and report back.
Thank you for diving through madness for the fix
@girish It worked! Need to change some of the jekyll code around to transition from github to this, but looks good!