TL;DR
GitHub PagesのUser Pages(#{username}.github.io
とかになるやつ)はリポジトリ直下がドキュメントルートになる。
サブディレクトリ(/docs
とか)をドキュメントルートにするには…
-
master
から別のブランチ(例:source
)を作ってリモートにpushしておくgit push origin source
- リポジトリの
Settings
->Branches
->Default Branches
をsource
に変更する
![Branches.png](https://qiita-user-contents.imgix.net/https%3A%2F%2Fqiita-image-store.s3.amazonaws.com%2F0%2F1994%2F8728437f-4547-68ac-21b4-d3f6753b0b21.png?ixlib=rb-4.0.0&auto=format&gif-q=60&q=75&s=ecdbb8e150fc4549da8776840e87f311)
これでhttp(s)://#{username}.github.io
にアクセスすると/docs/index.html
が表示される。
参考資料
GitHub PagesにはUser & Organization PagesとProject Pagesの2種類がある。Project Pagesはgh-pages
というブランチか/docs
以下をドキュメントルートにする「Source」という設定ができたのだが、User & Organization Pagesではmaster
のルート直下しか選べない。
「Source」が設定できるようになる前はgh-pages
というブランチを用意するしかなかったのだが、これもルート直下がドキュメントルートになってしまう。master
の/docs
をsubtreeとしてpushする、というテクニックが以前から使われていたので、それをmaster
として使ってみたというわけ。