git管理下にある複数のファイルをrm
したときに、それらを一括してgit rm
したい場合の方法です。
% git rm `git ls-files --deleted`
git ls-files
コマンドは、gitの管理状況ごとにファイルを一覧表示するためのコマンドで、上のように--deleted
を使えば削除されたファイルを表示します。他にも
--unmerged
でコンフリクトしたファイル表示、--exclude
を使えば管理外のファイルの非表示条件も設定できます。
シェルでは「`」でくくればコマンドの実行結果を取得できるので、それによって得られたファイル一覧をgit rm
で消す、という流れです。
一括削除する方法では、これ以外にもgit st
をgrep deleted
したのを整形するなど色々と手段はあるようですが、上記の方法が一番シンプルで分かりやすいので使っています。