Skip to main content

このバージョンの GitHub Enterprise はこの日付をもって終了となりました: 2022-10-12. 重大なセキュリティの問題に対してであっても、パッチリリースは作成されません。 パフォーマンスの向上、セキュリティの向上、新機能の向上を図るために、最新バージョンの GitHub Enterprise にアップグレードします。 アップグレードに関するヘルプについては、GitHub Enterprise サポートにお問い合わせく� さい

GitHub Pages サイトの Jekyll ビルドエラーに関するトラブルシューティング

Jekyll ビルドエラーのメッセージを利用して、GitHub Pages サイトの問題をトラブルシューティングすることができます。

GitHub Pagesは、GitHub Free及びOrganizationのGitHub Freeのパブリックリポジトリ、GitHub Pro、GitHub Team、GitHub Enterprise Cloud、GitHub Enterprise Serverのパブリック及びプライベートリポジトリで利用できます。

ビルドエラーのトラブルシューティング

GitHub Pages サイトをローカルで、または GitHub Enterprise Server 上でビルドしているときに Jekyll でエラーが発生した� �合、そのエラーメッセージをトラブルシューティングに利用できます。 エラー メッセージとその表示方法の詳細については、「GitHub Pages サイトの Jekyll ビルド エラーについて」を参照してく� さい。

一般的なエラーメッセージが表示された� �合は、よくある問題をチェックします。

  • サポートされていないプラグインを使用している。 詳細については、「GitHub Pages と Jekyll について」を参照してく� さい。
  • _config.yml ファイルの source 設定を変更しました。 GitHub Pages によってオーバーライドされます。
  • 公開元のファイル名にコロン (:) が含まれていますが、これはサポートされていません。

具体的なエラーメッセージが表示された� �合は、エラーメッセージに関する以下のトラブルシューティング情� �を確認してく� さい。

エラーを修正したら、サイトの公開元にその変更をプッシュして、GitHub Enterprise Server 上で別のビルドをトリガーします。

Config file error

このエラーは、 _config.yml ファイルに構文エラーが含まれているため、サイトのビルドに失敗したことを意味します。

トラブルシューティングを行うには、 _config.yml ファイルが次のルールに従っていることを確認します。

  • タブの代わりにスペースを使ってく� さい。
  • timezone: Africa/Nairobi のように、キーと値の各ペアの : の後にスペースを含めます。
  • UTF-8キャラクタ� けを使ってく� さい。
  • : などの特殊文字は引用符で囲み、title: "my awesome site: an adventure in parse errors" のようにします。
  • 複数行の値の� �合は、| を使用して改行を作成し、> を使用して改行を無視します。

エラーを特定するには、YAML ファイルの内容をコピーし、YAML Validator などの YAML リンターに貼り付けます。

Date is not a valid datetime

このエラーは、サイトのいずれかのページに無効な日付データが含まれていることを意味します。

トラブルシューティングするには、エラーメッセージで示されたファイルおよびファイルのレイアウトで、日付関連の Liquid フィルタをコールしている箇所を探します。 日付関連の Liquid フィルターに渡される変数には、すべてのケースで値が含まれていることを確認し、nil"" を渡さないようにしてく� さい。 詳細については、Liquid ドキュメントの「Liquid filters」(Liquid フィルター) を参照してく� さい。

File does not exist in includes directory

このエラーは、 _includes ディレクトリに存在しないファイルをコードが参照していることを意味します。

トラブルシューティングを行うには、エラー メッセージで include のファイルを検索して、{% include example_header.html %} などの他のファイルを参照した� �所を確認します。 参照したファイルのいずれかが _includes ディレクトリにない� �合は、ファイルを _includes ディレクトリにコピーするか、移動します。

このエラーは、サイトの公開されたファイル内に存在しないシンボリックリンクされたファイルをコードで参照していることを意味します。

トラブルシューティングを行うには、エラー メッセージで include のファイルを検索して、{% include example_header.html %} などの他のファイルを参照した� �所を確認します。 参照したファイルのいずれかがシンボリック リンクされている� �合は、ファイルを _includes ディレクトリにコピーするか、移動します。

File is not properly UTF-8 encoded

このエラーは、これらの記号を期待するようコンピューターに伝えずに、日本語などのラテン文字以外の文字を使用したことを意味します。

トラブルシューティングを行うには、 _config.yml ファイルに次の行を追� して UTF-8 エンコードを強制します。

encoding: UTF-8

Invalid highlighter language

このエラーは、構成ファイルで Rouge または Pygments 以外の構文ハイライターを指定したことを意味します。

トラブルシューティングを行うには、 _config.yml ファイルを更新して、Rouge または Pygments を指定します。 詳細については、「GitHub Enterprise Server と Jekyll について」を参照してく� さい。

Invalid post date

このエラーメッセージは、サイトでの投稿で、ファイル名または YAML フロントマターに無効な日付が含まれていることを意味します。

トラブルシューティングするには、日付がすべて YYYY-MM-DD HH:MM:SS 形式の UTC 時間で、実際のカレンダー日付であることを確認します。 UTC からのオフセットがあるタイ�  ゾーンを指定するには、2014-04-18 11:30:00 +0800 のような YYYY-MM-DD HH:MM:SS +/-TTTT 形式を使用します。

_config.yml ファイルで日付形式を指定する� �合は、形式が正しいことを確認してく� さい。

Invalid Sass or SCSS

このエラーは、リポジトリに無効な内容の Sass または SCSS ファイルが含まれていることを意味します。

トラブルシューティングするには、エラーメッセージに含まれている行番号を確認して、無効な Sass または SCSS を探します。 今後のエラーを防ぐために、お好みのテキストエディター用の Sass または SCSS 文法チェッカーをインストールします。

Invalid submodule

このエラーは、適切に初期化されていないサブモジュールがリポジトリに含まれていることを意味します。

トラブルシューティングするために、まずGitプロジェクト内のGitプロジェクトであるサブモジュールを本当に使いたいかを判断してく� さい。サブモジュールは偶然作られてしまうことがあります。

サブモジュールを使用しない� �合は、サブモジュールを削除し、PATH-TO-SUBMODULE をサブモジュールへのパスに置き換えます。

$ git submodule deinit PATH-TO-SUBMODULE
$ git rm PATH-TO-SUBMODULE
$ git commit -m "Remove submodule"
$ rm -rf .git/modules/PATH-TO-SUBMODULE

サブ モジュールを使用する� �合は、サブモジュールを参照するときに https:// を使用し (http:// ではなく)、サブモジュールがパブリック リポジトリにあることを確認してく� さい。

Invalid YAML in data file

このエラーは、 _data フォルダー内のいずれかのファイルに無効な YAML が含まれていることを意味します。

トラブルシューティングを行うには、 _data フォルダー内の YAML ファイルが次のルールに従っていることを確認します。

  • タブの代わりにスペースを使ってく� さい。
  • timezone: Africa/Nairobi のように、キーと値の各ペアの : の後にスペースを含めます。
  • UTF-8キャラクタ� けを使ってく� さい。
  • : などの特殊文字は引用符で囲み、title: "my awesome site: an adventure in parse errors" のようにします。
  • 複数行の値の� �合は、| を使用して改行を作成し、> を使用して改行を無視します。

エラーを特定するには、YAML ファイルの内容をコピーし、YAML Validator などの YAML リンターに貼り付けます。

Jekyll データ ファイルの詳細については、Jekyll ドキュメントの「Data Files」(データ ファイル) を参照してく� さい。

Markdown errors

このエラーは、リポジトリ Markdown エラーがあることを意味します。

トラブルシューティングするには、必ずサポートされている Markdown プロセッサを使用するようにします。 詳細については、「Jekyll を使用して GitHub Pages サイトの Markdown プロセッサを設定する」を参照してく� さい。

次に、エラーメッセージで示されているファイルが有効な Markdown 構文を使っていることを確認します。 詳細については、Daring Fireball の「Markdown: Syntax」(Markdown: 構文) を参照してく� さい。

Missing docs folder

このエラーは、ブランチ上の docs フォルダーを発行元として選択したが、そのブランチのリポジトリのルートに docs フォルダーがないことを意味します。

トラブルシューティングを行うには、docs フォルダーが誤って移動された� �合は、発行元用に選択したブランチのリポジトリのルートに docs フォルダーを戻してみてく� さい。 docs フォルダーが誤って削除された� �合は、次のいずれかを実行できます。

  • Git を使用して削除を revert する、つまり取り消す。 詳細については、Git ドキュメントの「git-revert」を参照してく� さい。
  • 発行元用に選択したブランチのリポジトリのルートに新しい docs フォルダーを作成し、このフォルダーにサイトのソース ファイルを追� する。 詳細については、「新しいファイルの作成」を参照してく� さい。
  • 公開ソースを変更する。 詳細については、「GitHub Pages の発行元を作成する」を参照してく� さい。

Missing submodule

このエラーは、存在しない、または適切に初期化されていないサブモジュールがリポジトリに含まれていることを意味します。

トラブルシューティングするために、まずGitプロジェクト内のGitプロジェクトであるサブモジュールを本当に使いたいかを判断してく� さい。サブモジュールは偶然作られてしまうことがあります。

サブモジュールを使用しない� �合は、サブモジュールを削除し、PATH-TO-SUBMODULE をサブモジュールへのパスに置き換えます。

$ git submodule deinit PATH-TO-SUBMODULE
$ git rm PATH-TO-SUBMODULE
$ git commit -m "Remove submodule"
$ rm -rf .git/modules/PATH-TO-SUBMODULE

サブモジュールを使用する必要がある� �合は、そのサブモジュールを初期化します。 詳細については、Pro Git ブックの「Git Tools - Submodules」(Git ツール - サブモジュール) を参照してく� さい。

このエラーは、 _config.yml ファイルに GitHub Pages でサポートされていない相対固定リンクがあることを意味します。

パーマリンクとは、サイトの特定ページを参照している恒久的な URL です。 絶対パーマリンクはサイトのルートから始まり、相対パーマリンクは参照先ページを含むフォルダで始まります。 GitHub Pages と Jekyll では、相対パーマリンクがサポートされなくなっています。 固定リンクの詳細については、Jekyll ドキュメントの「Permarinks」(固定リンク) を参照してく� さい。

トラブルシューティングを行うには、relative_permalinks_config.yml ファイルから 行を削除し、サイト内の相対固定リンクを絶対固定リンクで再フォーマットします。 詳細については、「ファイルの編集」を参照してく� さい。

このエラーは、サイト用の公開されたファイル内に存在しないシンボリック リンク (symlink) が、そのサイトに含まれていることを意味します。 シンボリックリンクの詳細については、ウィキペディアの「ソフト リンク」を参照してく� さい。

トラブルシューティングするには、エラーメッセージで示されているファイルがサイトのビルドに使われているかどうかを確認します。 使われていない� �合、またはファイルをシンボリックリンクにしたくない� �合は、ファイルを削除します。 サイトのビルドにシンボリック ファイルが必要な� �合は、そのシンボリック リンクで参照されているファイルまたはディレクトリが、サイト用の公開されたファイルにあることを確認してく� さい。 外部アセットを含めるには、Bower などのサード パーティ製パッケージ マネージャーの使用を検討してく� さい。

Syntax error in 'for' loop

このエラーは、コードの Liquid for ループ宣言に無効な構文が含まれていることを意味します。

トラブルシューティングを行うには、エラー メッセージ内のファイル内のすべての for ループに適切な構文があることを確認します。 for ループの適切な構文の詳細については、Liquid ドキュメントの「Iteration tags」(反復タグ) を参照してく� さい。

Tag not properly closed

このエラーメッセージは、コードに含まれる論理タグが正しく閉じていないことを意味します。 たとえば、{% capture example_variable %}{% endcapture %} で閉じる必要があります。

トラブルシューティングするには、エラーメッセージで示されているファイルの論理タグがすべて適切に閉じられていることを確認します。 詳細については、Liquid ドキュメントの「Liquid tags」(Liquid タグ) を参照してく� さい。

Tag not properly terminated

このエラーは、正しく閉じられていない出力タグがコードに含まれていることを意味します。 たとえば、{{ page.title }} ではなく {{ page.title } です。

トラブルシューティングを行うには、エラー メッセージ内のファイル内のすべての出力タグが }} で終了していることを確認します。 詳細については、Liquid ドキュメントの「Liquid objects」(Liquid オブジェクト) を参照してく� さい。

Unknown tag error

このエラーは、コードに認識されない Liquid タグが含まれていることを意味します。

トラブルシューティングするには、エラーメッセージで示されているファイルの Liquid タグがすべて Jekyll のデフォルトの変数に一致し、タグ名に誤入力がないことを確認します。 既定の変数の一覧については、Jekyll ドキュメントの「Variables」(変数) を参照してく� さい。

認識されないタグの主な原� は、サポート対象外のプラグインです。 サイトをローカルで生成し、静的なファイルを GitHub Enterprise Server にプッシュすることで、サポート対象外のプラグインを使用している� �合は、そのプラグインで Jekyll のデフォルトの変数と異なるタグが使われていないかどうか確認してく� さい。 サポートされているプラグインの一覧については、「GitHub Pages と Jekyll について」を参照してく� さい。