🍞
git rm --cached でリモートリポジトリのファイルを削除する
GitHub上のリポジトリに不要なファイルを公開してしまっていたため、削除する操作を行いました。
操作手順
- gitのインデックス(ステージングエリア)からファイルを削除。今回は--cachedオプションで作業ツリーのファイルは残すようにした。https://git-scm.com/docs/git-rm#Documentation/git-rm.txt---cached
git rm --cached 削除したいファイル
- .gitignoreにファイルを追加し、今後gitに追跡させないようにする。
- 変更をコミットしてpush
--cachedについて
- git rm
ファイルをGitのインデックス(ステージングエリア)と作業ツリーから削除する。 - git rm --cached
--cachedオプションは、インデックス(ステージングエリア)からはファイルが削除されるが、作業ツリーには影響を与えなくするためファイルは残される。
おわりに
rubocopのキャッシュなど不要なファイルををリモートリポジトリにプッシュしてしまっていたので、git rm --cachedでファイルを削除しました。
実際にコマンドを実行してみて、git rm --cachedではリモート上ではファイルが削除されるが、ローカルの作業ツリーではファイルが保持されていることを確認できました。
Discussion