GithubPagesを更新しようとしたら`fatal: No url found for submodule path 'テーマフォルダ' in .gitmodules`

GithubPagesを更新しようとしたら`fatal: No url found for submodule path 'テーマフォルダ' in .gitmodules`

前回の Post を Github に commit した時にいつまで経ってもサイトが更新されず、ビルド状況を確認すると build が失敗していた。

Error: fatal: No url found for submodule path 'themes/mainroad' in .gitmodules
Error: The process '/usr/bin/git' failed with exit code 128

カスタム css では変えられない部分を直接 theme ファイル側で変更したのですが、その結果プロジェクト全体の .git に不整合が生じてしまったということでしょうか…。

git clone してきた theme はいじってはいけない、というのはちょっと辛い。GitPages に限らず、サブモジュールを git clone してきて使うケースだってあるだろうし。ということでメッセージをキーワードに Google 先生に問い合わせてみました。

なるほど。git の管理外にしてしまうのか…。

$ git rm -r --cached --ignore-unmatch path-to-target/
$ git commit

うーん、変更をいれる以上管理下に置きたいけど、その場合は zip で落としてくるしかないということですかね…。 (そもそも git 管理下で clone してきたものはいじるなという事なのか。)

追記:2022.01.14

レイアウトのカスタマイズは直下の/layoutsフォルダに同名のファイルを置くことでこちらが優先されて適用される。 コードブロックのフォントで Consolas が使われてマルチバイト文字列で文字幅がずれる問題に対し mainroad の style.css を直接修正していたが、こちらもよく見ると以下のように書かれており、 config.toml.Site.Params.style.vars.fontFamilySecondary を指定することで変更できることが分かった。

{{- $fontMono := `SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace` -}}
(中略)
{{- $fontFamilySecondary := .Site.Params.style.vars.fontFamilySecondary | default $fontMono -}}

結局 theme ファイルをいじる必要なんてなかった…。
hugo なんもわからん。