Skip to content

Instantly share code, notes, and snippets.

@mertkahyaoglu
Forked from ramnathv/gh-pages.md
Created February 23, 2020 10:19
Show Gist options
  • Save mertkahyaoglu/4f889cd3a5b4d5913279f1246c6a9991 to your computer and use it in GitHub Desktop.
Save mertkahyaoglu/4f889cd3a5b4d5913279f1246c6a9991 to your computer and use it in GitHub Desktop.
Creating a clean gh-pages branch

Creating a clean gh-pages branch

This is the sequence of steps to follow to create a root gh-pages branch. It is based on a question at SO

cd /path/to/repo-name
git symbolic-ref HEAD refs/heads/gh-pages
rm .git/index
git clean -fdx
echo "My GitHub Page" > index.html
git add .
git commit -a -m "First pages commit"
git push origin gh-pages

Why do we need to do all this, instead of just calling git branch gh-pages. Well, if you are at master and you do git branch gh-pages, gh-pages will be based off master.

Here, the intention is to create a branch for github pages, which is typically not associated with the history of your repo (master and other branches) and hence the usage of git symbolic-ref. This creates a "root branch", which is one without a previous history.

Note that it is also called an orphan branch and git checkout --orphan will now do the same thing as the git symbolic-ref that was being done before. Check out this question on SO2 as well.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment