gitで特定のフォルダ名に入っているものを管理から外す方法

pythonのプロジェクトをgitで管理する際に__pycache__がコミットされていたので、それを外したくて、考えました。

特定のフォルダ名に入っているものを管理から外す方法

結果から言うと、これでできます。

git rm -r `git ls-files | grep __pycache__`

ちなみに、これだとキャッシュごと削除されるので、
これ↓のほうがいいかも、試してないのでできないかもしれないです。。

git rm --cached `git ls-files | grep __pycache__`

解説

git ls-filesで管理下にある、ファイルが一覧で取得できるので、grep__pycache__(特定のフォルダ名)を含む行を検索します。
※同じファイル名がある場合は/__pycache__/とかにしてね。
それを`(バッククォート)で囲うとそれのコマンドが先に行われてその出力を対象にしてくれます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です