eureka

Gitで無視されているファイルを強制的にステージングへ追加する

3

ことの始まり

作業ファイルをコミットせずにブランチをチェックアウトしたら、チェックアウトしたブランチでも表示されている・・・
通常はチェックアウトしたら作業ファイルは新しいブランチには引き継がれないはず。

調べてみるとコミットせずにチェックアウトすると新しいブランチにも引き継がれる模様。。

まだコミットしていない変更内容や新しく追加したファイルが、インデックスやワークツリーに残ったままで、他のブランチへのチェックアウトを行うと、その変更内容は元のブランチから、移動先のブランチに対して移動します。

サルでもわかるGit入門

しかも該当のファイルは新しいブランチでも元のブランチに戻しても認識してくれなくなった!
VScode上でファイル名がグレーになっていて、.gitignoreで無視されている時と同じ状態に。がーん

じゃあ強制的に追加したらいいじゃん!

てことで強制的に追加することに。

まず無視されているファイル一覧を取得する。
ターミナルで下記のコマンドをgit管理しているディレクトリ内で実行する。

$ git status --ignored

そうすると今無視されているファイルがバーっと出てくるから、その中に該当ファイルが含まれていることを確認する。

そしてステージングへ強制追加のコマンドをどーん!!

$ git add -f ファイル名

SourceTreeなどのGUIツールで確認するとステージングに追加されている。よかったよかった。

3