Skip to content

Instantly share code, notes, and snippets.

@sarfraznawaz2005
Forked from ramnathv/gh-pages.md
Created March 4, 2018 07:02
Show Gist options
  • Save sarfraznawaz2005/7a4fe97e50dc416b229e383d183f7522 to your computer and use it in GitHub Desktop.
Save sarfraznawaz2005/7a4fe97e50dc416b229e383d183f7522 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