ブログのソース管理と git submodule deinit
ソースも git で管理したかった
$ hexo deploy -g
するとページを生成しつつ公開用に push してくれるが、生成元の markdown ファイルや _config.yaml も git で管理したかった。
というより、ローカルに置いといても無くしちゃうので管理する必要があった。
で、この記事 の最後の段落、「hexo をリポジトリ管理」がまさにやりたいことだったので参考にしてさっそくやってみたのだけれど…。
init できない
まず、ブログのソースのあるディレクトリで $ git init
がうまくいかない。
|
|
init した覚えないのに…と思いつつ確認してみると、 .gitignore があったので中身を確認してみる。
|
|
なるほど、これは hexo をインストールした時点で用意してくれていたようだ。
git が入れ子状態
では、ということで add して commit したが、どうもうまくいかない…。
|
|
どうも、テーマファイルを追加した際に git clone したので、 git の管理が入れ子になっちゃってるみたいだった。
↓こんな感じ
|
|
とりあえず親ディレクトリから ./themes/apollo/_config.yaml を add してみるが失敗。
|
|
仕方ないので子ディレクトリ上で変更差分を commit する。
これは普通にできた。
submodule のキャッシュをクリア
submodule の設定なんてした覚えがないけれど、たぶんそういうことになっちゃってるぽいので試しに親ディレクトリで submodule update
してみるがこれもなんかおかしい。
|
|
検索しやすそうなエラーなのですぐに解決策がありそうな、 それっぽい記事 が見つかった。
どうやら submodule のキャッシュを捨てれば良さそうだ。
|
|
うまくいった!!
このあと、あらためて $ git remote add
などをすませて無事に当初の目的を果たした。
(ブログ公開用リポジトリに、別ブランチでソースを push できた)
やれやれ。