Unable to change source branch in GitHub Pages
FWIW, this is the setup I used for publishing a personal page (i.e. https://user-name.github.io
) using Next.js and gh-pages:
- Create a different default branch in your repo to work in (e.g.
develop
) - Build a static export of your site:
next build && next export
- Put a
.nojekyll
marker file in the export directory:touch out/.nojekyll
- Upload the static export to the master branch:
gh-pages -t -b master -d out
You can bundle these commands in package.json
to get a convenient yarn deploy
command:
scripts: {
...
"build": "next build",
"export": "yarn run build && next export",
"deploy": "yarn export && touch out/.nojekyll && gh-pages -t -b master -d out"
...
Personal or organization sites are built from master
. gh-pages
branch is used to build sites for projects.
As far as I can see, you're using https://user-name.github.io/ url, this is a personal one, so that's why master
branch is the default one.
See the documentation page
If your site is a User or Organization Page that has a repository named
<username>.github.io
or<orgname>.github.io
, you cannot publish your site's source files from different locations. User and Organization Pages that have this type of repository name are only published from the master branch.
So the answer is No, you can not change it. You'll have to adjust your workflow and keep development in another branch (let's call it development
) and merge to master
when you're ready to publish.
UPD: It's 2020 out there, so as of July 31st GitHub Pages allow you to configure any branch to act as an old master