概要
gitの管理下に置きたくないファイル。皆さんもありませんか?
先日、vendorディレクトリ以下を管理から外したいと思った時、苦戦してしまいました。
今後も使うため、その時に使用したコマンド・資料を記録したいと思います
対象
gitの管理下に入っているファイルを、管理下から外したい方
例)
- 自動に作られるファイル
- APIキーなどの拡散してはいけない情報
##コマンドと流れ
①.gitignoreの管理下から削除
ターミナル
git rm --cached [ファイル名]
git rm -rf --cached [フォルダ名]
これで管理下から削除されます
②.gitignoreに記述
ターミナル
#ファイルを除外する場合、ファイル名を記入
index.html.erb
#ディレクトリ以下を除外する場合は、ディレクトリ名/
dir/
今回
/.bundle
/vendor/bundle
この記述を忘れないようにしたいです。
詳しい記述のリンクを貼っておきます。
.gitignore の書き方
####③.gitignoreの管理下にあるか確認
ターミナル
git status --ignored
rmが反映されない時に試して欲しいこと
後日 git rm -rf --cached [フォルダ名] を使用した時、反映されませんでした。
ターミナル
#そんなファイルありません!
❯ git rm -rf --cached vendor/
fatal: pathspec 'vendor/' did not match any files
その場合は、git add を実行してから、再度実行してください。
ステージに上げないと、そもそも記録されていないので、消せないという現象かと思います。