GitHubページは、この問題に対するGitHubの公式ソリューションです。
raw.githubusercontent
text/plain
ファイルがCSSまたはJavaScriptファイルであっても、すべてのファイルがMIMEタイプを使用するようにします。したがってhttps://raw.githubusercontent.com/‹user›/‹repo›/‹branch›/‹filepath›
、は正しいMIMEタイプではなくプレーンテキストファイルになり、それを介してリンクする<link href="..."/>
か<script src="..."></script>
、機能しません。CSSが適用されないか、JSが実行されません。
GitHub Pagesは特別なURLでリポをホストするため、ファイルをチェックインしてプッシュするだけで済みます。ほとんどの場合、GitHubページでは特別なブランチにコミットする必要があることに注意してください。gh-pages
。
新しいサイト(通常は)https://‹user›.github.io/‹repo›
では、gh-pages
ブランチにコミットされたすべてのファイル(最新のコミット)がこのURLに存在します。だからあなたはあなたのjsファイルにリンクすることができ<script src="https://‹user›.github.io/‹repo›/file.js"></script>
、これは正しいMIMEタイプになります。
ビルドファイルはありますか?
個人的には、このブランチをと並行して実行することをお勧めしmaster
ます。上のgh-pages
枝は、あなたの編集できる.gitignore
ようにファイルをチェックインしている間、あなたのサイトのために必要なすべてのDIST /ビルドファイル(例えば、あなたがどんな縮小さ/コンパイルされたファイルを持っている場合)、それらは無視保つことであなたのmaster
の枝。通常は、通常のリポジトリのビルドファイルの変更を追跡する必要がないため、これは便利です。ホストされているファイルを更新するたびmaster
にgh-pages
、にマージし、再構築、コミットしてからプッシュするだけです。
(ヒント:次の手順で同じコミットでマージおよび再構築できます:)
$ git checkout gh-pages
$ git merge --no-ff --no-commit master # prepare the merge but don’t commit it (as if there were a merge conflict)
$ npm run build # (or whatever your build process is)
$ git add . # stage the newly built files
$ git merge --continue # commit the merge
$ git push origin gh-pages