以下の2つの制約を守る必要があります。
- httpsで使用されていること
- submoduleがパブリックリポジトリであること
GitHub Pagesのデプロイに失敗してしまった時
制約を守れなかった場合は、以下のような警告文が表示されます。(discogs-python-api
というsubmoduleを、SSHで使用してしまいました)
この状態になると、GitHub Pagesのデプロイに失敗しているので、サイトも404になってしまいます。
また、警告にあるリンクを辿るとSubmoduleを削除する手順が記載されています。
GitHub Pages サイトの Jekyll ビルドエラーに関するトラブルシューティング - GitHub Docs
git submodule deinit PATH-TO-SUBMODULE
git rm PATH-TO-SUBMODULE
git commit -m "Remove submodule"
rm -rf .git/modules/PATH-TO-SUBMODULE
GitHub Pagesをデプロイするリポジトリにsubmoduleを使う場合、
制約を守って使うか、守れない場合はsubmoduleを使わないで管理する必要があります。
Reference