Start with a fork of an existing Jekyll/github-pages repo (I can highly recommend Minimal Mistakes ). This isn't mandatory, and you can certainly start with a blank slate, but starting from an existing repo can greatly speed up the learning curve.... and minimise some of those early mistakes.
Rename that Fork to be a repo called mygituser.github.io, so mine is bseymour.github.io
Clone a local working copy, and setup the remote such that commits go to that gh-pages repo
Install the gem 'github-pages' to ensure that your local environment mirrors the live gh-pages environment, to avoid unpleasant surprises when deploying to live.
Be very careful about using plugins, as gh-pages supports only a few
Experiment locally, push live early, and develop in the open.
Use the livereload plugin locally to auto-re-generate after changes.
(Optional), setup the CNAME for your own domain e.g. For me bseymour.com -> bseymour.github.io
(Optional) Consider fronting your site with a CDN. I used this as an opportunity to Cloudflare for the first time, who thanks to them also being a DNS provider can offer some simpler-than-usual options for serving your site over SSL. More details here
Experiment, explore and have fun.