Fehlerbehebung bei Build-Fehlern
Wenn beim Erstellen Ihrer GitHub Pages-Website (lokal oder auf GitHub Enterprise Server) mit Jekyll ein Fehler auftritt, können Sie die Fehlerbehebung mithilfe der Fehlermeldungen durchführen. Weitere Informationen zu Fehlermeldungen und zum Abrufen dieser Meldungen findest Du unter „Behebung von Jekyll-Build-Fehlern bei GitHub Pages-Websites.“
Wenn Du eine generische Fehlermeldung erhalten hast, suche nach häufigen Fehlern.
- Du verwendest nicht unterstützte Plug-Ins. For more information, see "About GitHub Pages and Jekyll."
- Du hast die
source
-Einstellung in der Datei _config.yml geändert. GitHub Pages überschreibt diese Einstellung beim Build-Prozess. - Ein Dateiname in Deiner Veröffentlichungsquelle enthält einen Doppelpunkt (
:
). Dies wird nicht unterstützt.
Wenn Du eine spezifische Fehlermeldung erhalten hast, lies die nachfolgenden Informationen zur Fehlerbehebung für die jeweilige Fehlermeldung.
Wenn Sie einen Fehler behoben haben, übertragen Sie die Änderungen mit einem Push-Vorgang an die Veröffentlichungsquelle der Website, sodass ein neuer Build auf GitHub Enterprise Server ausgelöst wird.
Fehler bei der Dateikonfiguration
Dieser Fehler bedeutet, dass der Build Deiner Website fehlgeschlagen ist, da die Datei _config.yml Syntaxfehler enthält.
Zur Fehlerbehebung prüfe, ob die Datei _config.yml diesen Regeln entspricht:
- Verwende Leerzeichen statt Tabs.
- Füge für jedes Schlüsselwertpaar ein Leerzeichen nach dem
:
ein, beispielsweisetimezone: Africa/Nairobi
. - Verwende nur UTF-8-Zeichen.
- Setze alle Sonderzeichen wie zum Beispiel
:
in Anführungszeichen, beispielsweisetitle: "my awesome site: an adventure in parse errors"
. - Für mehrzeilige Werte verwende
|
um Zeilenumbrüche zu erstellen und>
um Zeilenumbrüche zu ignorieren.
Um Fehler zu identifizieren, kannst Du den Inhalt Deiner YAML-Datei kopieren und in einen YAML-Linter einfügen, beispielsweise YAML Validator.
Datum besitzt ungültiges Datum/Uhrzeit
Dieser Fehler bedeutet, dass eine Seite der Website einen ungültigen Wert für Datum/Uhrzeit enthält.
Zur Fehlerbehebung prüfe die in der Fehlermeldung genannte Datei und deren Layouts auf Aufrufe datumsbezogener Liquid-Filter. Prüfe, ob alle Variablen, die an datumsabhängige Liquid-Filter übergeben werden, Werte enthalten und nicht nil
oder ""
übergeben. Weitere Informationen findest Du unter „Liquid filters“ (Liquid-Filter) in der Liquid-Dokumentation.
Datei ist im Verzeichnis „includes“ nicht vorhanden
Dieser Fehler bedeutet, dass Dein Code auf eine Datei verweist, die sich nicht im Verzeichnis _includes befindet.
Zur Fehlerbehebung durchsuche die Datei in der Fehlermeldung auf include
um zu sehen, wo Du auf andere Dateien verwiesen hast, wie beispielsweise {% include example_header.html %}
. Wenn sich referenzierte Dateien nicht im Verzeichnis _includes befinden, kopiere oder verschiebe die betreffenden Dateien in das Verzeichnis _includes.
Datei ist ein Symlink
Dieser Fehler bedeutet, dass der Code auf eine per Symlink verknüpfte Datei verweist, die sich nicht in der Veröffentlichungsquelle für Deine Website befindet.
Zur Fehlerbehebung durchsuche die Datei in der Fehlermeldung auf include
um zu sehen, wo Du auf andere Dateien verwiesen hast, wie beispielsweise {% include example_header.html %}
. Wenn per Symlink verlinkte Dateien referenziert werden, kopieren oder verschieben Sie die betreffenden Dateien in das Verzeichnis _includes.
Datei ist nicht ordnungsgemäß UTF-8-codiert
Dieser Fehler bedeutet, dass Du nicht lateinische Buchstaben wie 日本語
verwendet hast, ohne dem Computer mitzuteilen, dass er diese Symbole erwarten soll.
Zur Fehlerbehebung erzwinge die UTF-8-Codierung. Trage hierzu die folgende Zeile in die Datei _config.yml ein:
encoding: UTF-8
Textmarkersprache ungültig
Dieser Fehler bedeutet, dass Du nicht die Syntaxmarkierer Rouge oder Pygments in der Konfigurationsdatei angegeben hast, sondern einen anderen Markierer.
Zur Fehlerbehebung aktualisiere die Datei _config.yml, und gib Rouge oder Pygments an. Weitere Informationen findest Du unter „Informationen zu GitHub Enterprise Server und Jekyll.“
Ungültiges Beitragsdatum
Dieser Fehler bedeutet, dass ein Beitrag auf Deiner Website ein ungültiges Datum im Dateinamen oder in der YAML-Frontmatter enthält.
Zur Fehlerbehebung formatiere alle Datumsangaben als YYYY-MM-DD HH:MM:SS für UTC, und prüfe, ob gültige Kalenderdaten angegeben sind. Soll eine Zeitzone außerhalb der UTC angegeben werden, verwende das Format YYYY-MM-DD HH:MM:SS +/-TTTT, beispielsweise 2014-04-18 11:30:00 +0800
.
Wenn Du ein Datumsformat in der Datei _config.yml festlegst, achte auf das richtige Format.
Sass oder SCSS ungültig
Dieser Fehler bedeutet, dass Dein Repository eine Sass- oder SCSS-Datei mit ungültigem Inhalt enthält.
Zur Fehlerbehebung prüfe die in der Fehlermeldung genannte Zeilennummer auf ungültige Sass oder SCSS. Damit solche Fehler in Zukunft vermieden werden, installiere einen Sass- oder SCSS-Linter für Deinen meistgenutzten Texteditor.
Ungültiges Submodul
Dieser Fehler bedeutet, dass Dein Repository ein nicht ordnungsgemäß initialisiertes Submodul enthält.
Zur Fehlerbehebung entscheide zuerst, ob Du tatsächlich ein Submodul verwenden möchtest, bei dem es sich um ein Git-Projekt innerhalb eines Git-Projekts handelt; Submodule werden manchmal versehentlich erstellt.
Wenn Du kein Submodul verwenden möchtest, entferne das Submodul und ersetze PATH-TO-SUBMODULE mit dem Pfad zum Submodul:
$ git submodule deinit PATH-TO-SUBMODULE
$ git rm PATH-TO-SUBMODULE
$ git commit -m "Remove submodule"
$ rm -rf .git/modules/PATH-TO-SUBMODULE
Soll das Submodul dennoch verwendet werden, referenziere das Submodul mit https://
(nicht mit http://
), und stelle sicher, dass sich das Submodul in einem öffentlichen Repository befindet.
Ungültige YAML in der Datendatei
Dieser Fehler bedeutet, dass mindestens eine Datei im Ordner _data ungültige YAML enthält.
Zur Fehlerbehebung prüfe, ob die YAML-Dateien im Ordner _data diesen Regeln entsprechen:
- Verwende Leerzeichen statt Tabs.
- Füge für jedes Schlüsselwertpaar ein Leerzeichen nach dem
:
ein, beispielsweisetimezone: Africa/Nairobi
. - Verwende nur UTF-8-Zeichen.
- Setze alle Sonderzeichen wie zum Beispiel
:
in Anführungszeichen, beispielsweisetitle: "my awesome site: an adventure in parse errors"
. - Für mehrzeilige Werte verwende
|
um Zeilenumbrüche zu erstellen und>
um Zeilenumbrüche zu ignorieren.
Um Fehler zu identifizieren, kannst Du den Inhalt Deiner YAML-Datei kopieren und in einen YAML-Linter einfügen, beispielsweise YAML Validator.
Weitere Informationen zu Jekyll-Datendateien findest Du unter „Data Files“ (Datendateien) in der Jekyll-Dokumentation.
Markdown-Fehler
Dieser Fehler bedeutet, dass Dein Repository Markdown-Fehler enthält.
Zur Fehlerbehebung verwende einen unterstützten Markdown-Prozessor. Weitere Informationen findest Du unter „Markdown-Prozessor für Deine GitHub Pages-Website mit Jekyll festlegen.“
Prüfe außerdem, ob die in der Fehlermeldung genannte Datei eine gültige Markdown-Syntax umfasst. Weitere Informationen findest Du unter „Markdown: Syntax“ bei Daring Fireball.
Dokumentordner fehlt
This error means that you have chosen the docs
folder on a branch as your publishing source, but there is no docs
folder in the root of your repository on that branch.
To troubleshoot, if your docs
folder was accidentally moved, try moving the docs
folder back to the root of your repository on the branch you chose for your publishing source. Wenn der Ordner docs
versehentlich gelöscht wurde, kannst Du wie folgt vorgehen:
- Mache den Löschvorgang mit Git rückgängig. Weitere Informationen findest Du unter „git-revert in der Git-Dokumentation.
- Create a new
docs
folder in the root of your repository on the branch you chose for your publishing source and add your site's source files to the folder. Weitere Informationen finden Sie unter „Neue Dateien erstellen“. - Ändere die Veröffentlichungsquelle. Weitere Informationen findest Du unter „Eine Veröffentlichungsquelle für GitHub Pages konfigurieren.“
Submodul fehlt
Dieser Fehler bedeutet, dass Dein Repository ein nicht vorhandenes oder ein nicht ordnungsgemäß initialisiertes Submodul enthält.
Zur Fehlerbehebung entscheide zuerst, ob Du tatsächlich ein Submodul verwenden möchtest, bei dem es sich um ein Git-Projekt innerhalb eines Git-Projekts handelt; Submodule werden manchmal versehentlich erstellt.
Wenn Du kein Submodul verwenden möchtest, entferne das Submodul und ersetze PATH-TO-SUBMODULE mit dem Pfad zum Submodul:
$ git submodule deinit PATH-TO-SUBMODULE
$ git rm PATH-TO-SUBMODULE
$ git commit -m "Remove submodule"
$ rm -rf .git/modules/PATH-TO-SUBMODULE
Soll ein Submodul verwendet werden, initialisiere das Submodul. Weitere Informationen findest Du unter „Git-Tools – Submodule“ im Pro Git-Buch.
Relative Permalinks konfiguriert
Dieser Fehler bedeutet, dass Sie relative Permalinks in der Datei _config.yml nutzen, die nicht von GitHub Pages unterstützt werden.
Permalinks sind permanente URLs, die auf einen bestimmten Beitrag oder eine bestimmte Seite Deiner Website verweisen. Absolute Permalinks beginnen mit dem Root der Website, relative Permalinks dagegen mit dem Ordner, in dem sich die referenzierte Seite befindet. GitHub Pages und Jekyll unterstützen relative Permalinks nicht mehr. Weitere Informationen zu Permalinks findest Du unter „Permalinks“ in der Jekyll-Dokumentation.
Zur Fehlerbehebung entferne die Konfigurationsoption relative_permalinks
aus der Datei _config.yml der Website, und ändere alle relativen Permalinks auf der Website in absolute Permalinks. Weitere Informationen findest Du unter „Dateien in Deinem Repository bearbeiten.“
Symlink ist im Repository Deiner Website nicht vorhanden
Dieser Fehler bedeutet, dass die Website einen symbolischen Link (Symlink) enthält, der sich nicht in der Veröffentlichungsquelle für die Website befindet. Weitere Informationen zu Symlinks findest Du unter „Symbolic Link“ (Symbolische Verknüpfung) auf Wikipedia.
Zur Fehlerbehebung prüfe, ob die in der Fehlermeldung genannte Datei für den Build der Website erforderlich ist. Falls nicht (oder falls die Datei kein Symlink sein soll), lösche die Datei. Wenn die Datei, auf die der Symlink verweist, für den Build der Website erforderlich ist, stelle sicher, dass die Datei oder das Verzeichnis, auf das der Symlink verweist, in der Veröffentlichungsquelle der Website vorhanden ist. To include external assets, consider using a third-party package manager such as Bower.
Syntaxfehler in der „for“-Schleife
Dieser Fehler bedeutet, dass Dein Code ungültige Syntax in einer Liquid-for
-Schleifen-Deklaration enthält.
Zur Fehlerbehebung prüfe die Syntax in allen for
-Schleifen in der Datei, die in der Fehlermeldung genannt ist. Weitere Informationen zur korrekten Syntax für for
-Schleifen findest Du unter „Iteration tags“ (Iterations-Tags) in der Liquid-Dokumentation.
Tag nicht ordnungsgemäß geschlossen
Diese Fehlermeldung bedeutet, dass Dein Code ein logisches Tag enthält, das nicht korrekt geschlossen ist. {% capture example_variable %}
muss beispielsweise mit {% endcapture %}
geschlossen werden.
Zur Fehlerbehebung prüfe, ob alle logischen Tags in der Datei, die in der Fehlermeldung genannt ist, ordnungsgemäß geschlossen sind. Weitere Informationen findest Du unter „Liquid tags“ (Liquid-Tags) in der Liquid-Dokumentation.
Tag nicht ordnungsgemäß beendet
Diese Fehlermeldung bedeutet, dass Dein Code ein Ausgabe-Tag enthält, das nicht korrekt beendet wurde. Beispiel: {{ page.title }
statt {{ page.title }}
.
Zur Fehlerbehebung prüfe, ob alle Ausgabe-Tags in der Datei, die in der Fehlermeldung genannt ist, mit }}
beendet wurden. Weitere Informationen findest Du unter „Liquid objects“ (Liquid-Objekte) in der Liquid-Dokumentation.
Unbekannter Tag-Fehler
Dieser Fehler bedeutet, dass Dein Code ein nicht erkanntes Liquid-Tag enthält.
Zur Fehlerbehebung prüfe, ob alle Liquid-Tags in der Datei, die in der Fehlermeldung genannt ist, den Jekyll-Standardvariablen entsprechen und ob die Tag-Namen korrekt geschrieben sind. For a list of default variables, see "Variables" in the Jekyll documentation.
Nicht unterstützte Plug-ins sind häufig die Quelle für unbekannte Tags. Wenn Sie ein nicht unterstütztes Plug-in auf der Website verwenden, also die Website lokal erstellen und die statischen Dateien per Push-Verfahren an GitHub Enterprise Server übertragen, darf das Plug-in keine Tags umfassen, die nicht in den Jekyll-Standardvariablen aufgeführt sind. Eine Liste der unterstützten Plug-ins findest Du unter „Informationen zu GitHub Pages und Jekyll.“