HUGOに適した.gitignoreの設定

  • .gitignoreの基本
    • .gitignoreの作成方法
    • .gitignoreの記述
  • HUGOで.gitignoreを使うケース
    • 設置ディレクトリ
    • あとから.gitignoreの内容を反映させる

.gitignoreの基本

.gitignoreの基本

  • .gitignoreの作成方法
  • .gitignoreの記述方法

それぞれ、掘り下げていきます!

.gitignoreの作成方法

.gitignoreのは拡張子だけのファイルなので、ソフトや環境によっては作成できないことがあります。

vscodeやatomなどの総合エディターでファイルを作成するのがオススメです。

vscodeで作成する場合、新規ファイル作成で空のファイルを作って、.gitignoreとファイル名をつければ完了です。

.gitignoreの書き方

.gitignoreの書き方を説明します。
基本的に管理対象から外したいものとコメントを書きます。

.gitignoreの書き方の基本

コメントは#、管理対象から外すものはそのまま記述するのが基本です。

#gomi1-3を対象外にする
gomi1
gomi2
gomi3

これで、gomi1、gomi2、gomi3は管理対象からはずれます。

何パターンか実際に使う書き方を紹介します。

フォルダの中身を全て無視

#gomiフォルダの中を全部無視
gomi/

特定フォルダの指定ファイルを無視

#useフォルダのgomi4を無視する
use/gomi4

特定の拡張子を無視

# PNGを無視する
.png

無視しないものを例外処理

# ロゴの.pngは残す
!/assets/image/logo.png

HUGOで.gitignoreを使うケース

HUGOで.gitignoreを使うケース

  • .gitignoreの対象にするもの
  • .gitignoreの設置ディレクトリ
  • あとから.gitignoreの内容を反映させる方法

それぞれ、掘り下げていきます!

.gitignoreの対象にするもの

私はHUGOの管理は、VScodeとObsidianの2つを使っています。
htmlやcssなどを編集するときはVScodeで、記事の執筆はObsidianをと分けているのです。

なので、プロジェクトのルートには.vscodeがあり、contentには.obsidianがあります。

これら2つのファイルはHUGOのデプロイには関係無いので、.gitignoreの対象にしました。

/resources/_genとかを対象にするケースもあるでしょう。

.gitignoreの設置ディレクトリ

作成した.gitignoreファイルの設置ディレクトリは、.gitフォルダと同じディレクトリに設置しましょう。

あとから.gitignoreの内容を反映させる方法

最初から.gitignoreを正しく設定していれば良いのですがあとから気づく追加する場合もあるでしょう。
私はそうでした。

あとから.gitignoreを作成した場合、.gitignoreファイルで指定した内容もリポジトリに残ったままになります。

少し作業が必要ですが、コマンドを少し叩くだけなんで3分もあれば大丈夫です。

.gitignoreをリポジトリに追加

まず、作成した.gitignoreをリポジトリに追加しましょう。
コマンドは以下です。

git add .gitignore
git commit -m ".gitignore追加"
git push

これで、リポジトリに.gitignoreが追加されました。

.gitignoreで指定したファイルをリポジトリから削除

つぎは.gitignoreファイルの内容を反映させましょう。
コマンドは以下です。

git rm -r --cached .
git add .
git commit -am ".gitignoreファイルの除去"
git push

これで.gitignoreの内容が反映されました。

補足すると、git rmで不要なファイルごと削除して、git rm --cachedにすることで、ファイルをワークツリーに残してインデックスからの削除だけを実行してくれます。

管理対象から外すファイルを除去して、それ以外の全ファイルをaddとcommitをして、最後にPushして完了という感じです。

まとめ

HUGOで.gitignoreを設定する場合は、プロジェクトにルートに.gitignoreを設置して、.gitignoreの内容を反映させるアクションをすれば大丈夫です。

カテゴリー:HUGO