It seems like you are asking a few questions here, so let’s work out the first one, which is why your GitHub Pages are not running locally (and why you are getting build errors on GitHub, but I don’t know if you noticed that ).
The significant issue here is your site is not fully configured. I cloned your site, made a few changes, and even ran it through GitHub Pages, and the site runs fine.
- Your
_config.yml
file is not configured correctly. You need to have a baseurl
and url
, along with the mention of your theme. I wonder did you have this at some point and accidentally deleted it? Anyway, I used the config from a brand new Jekyll site and set it up for you, so you can copy and paste over what you have on the main branch right now:
# Welcome to Jekyll!
#
# This config file is meant for settings that affect your whole blog, values
# which you are expected to set up once and rarely edit after that. If you find
# yourself editing this file very often, consider using Jekyll's data files
# feature for the data you need to update frequently.
#
# For technical reasons, this file is *NOT* reloaded automatically when you use
# 'bundle exec jekyll serve'. If you change this file, please restart the server process.
# Site settings
# These are used to personalize your new site. If you look in the HTML files,
# you will see them accessed via {{ site.title }}, {{ site.email }}, and so on.
# You can create any custom variable you would like, and they will be accessible
# in the templates via {{ site.myvariable }}.
title: Sam Hobbs's Web Site
email: your-email@example.com
description: >- # this means to ignore newlines until "baseurl:"
My personal website.
baseurl: "/SamHobbsOrg.github.io-main" # the subpath of your site, e.g. /blog
url: "https://billraymond.github.io" # the base hostname & protocol for your site, e.g. http://example.com
twitter_username: jekyllrb
github_username: jekyll
# Build settings
markdown: kramdown
theme: minima
plugins:
- jekyll-feed
# Exclude from processing.
# The following items will not be processed, by default. Create a custom list
# to override the default setting.
# exclude:
# - Gemfile
# - Gemfile.lock
# - node_modules
# - vendor/bundle/
# - vendor/cache/
# - vendor/gems/
# - vendor/ruby/
- You do not have a
gemfile
at the root of your main
branch. Create that file (no extension) and paste the following text in:
source "https://rubygems.org"
# Hello! This is where you manage which Jekyll version is used to run.
# When you want to use a different version, change it below, save the
# file and run `bundle install`. Run Jekyll with `bundle exec`, like so:
#
# bundle exec jekyll serve
#
# This will help ensure the proper Jekyll version is running.
# Happy Jekylling!
gem "jekyll", "~> 3.9.0"
# This is the default theme for new Jekyll sites. You may change this to anything you like.
gem "minima", "~> 2.5.1"
# If you want to use GitHub Pages, remove the "gem "jekyll"" above and
# uncomment the line below. To upgrade, run `bundle update github-pages`.
# gem "github-pages", group: :jekyll_plugins
# If you have any plugins, put them here!
group :jekyll_plugins do
gem "jekyll-feed", "~> 0.6"
end
# Windows does not include zoneinfo files, so bundle the tzinfo-data gem
# and associated library.
install_if -> { RUBY_PLATFORM =~ %r!mingw|mswin|java! } do
gem "tzinfo", "~> 1.2"
gem "tzinfo-data"
end
# Performance-booster for watching directories on Windows
gem "wdm", "~> 0.1.0", :install_if => Gem.win_platform?
# kramdown v2 ships without the gfm parser by default. If you're using
# kramdown v1, comment out this line.
gem "kramdown-parser-gfm"
gem "webrick", "~> 1.7"
At this point, your website should build on GitHub Pages and you should be able to pull these changes down locally.
When you pull down locally for the first time, run the following commands for the first time:
bundle install
bundle update
Moving forward, keep your local and remote in sync and you should just have to type the following to view your site locally:
bundle exec jekyll serve --livereload
FYI, I am not a Windows user, so do not know if there are any other things you will have to do in order to get Ruby and Jekyll running, but it worked just fine on my Mac.