👏
git rm --cached ファイルをリモートリポジトリのみ削除する
概要
ローカルリポジトリのファイルは残してリモートリポジトリのファイルのみを消したいときがあります。
そんなときには、自分は以下の手順で削除しています。
git rm --cached 削除したいファイル- 変更を push
-
.gitignoreにファイルを追加して Git の追跡から外す
コマンドの意味
| コマンド | 意味 |
|---|---|
rm |
通常の unix コマンド |
git rm |
Git コマンドオプションの 1 つ。ファイルの履歴(index)ごと消す。working tree のファイルも削除される |
git rm --cached |
ファイルの履歴(index)のみ削除する。working tree のファイルは残る |
Discussion
rmは、ファイルやディレクトリを削除するためのunixのコマンドです。git rmは、gitのworking treeとindexからファイルを削除するコマンドです。git rm --cachedはgitのindexからファイルを削除し、working treeには影響を与えないコマンドです。全てローカルリポジトリのみで完結した話で、リモートリポジトリは関係ありません。
indexとかworking treeはこんな感じのものです。
上記を参考に記事の修正を検討してみて下さい。
エンジニア同士、今後も勉強もアウトプットも頑張っていきましょう!!
コメントのほどありがとうございます!
git rm --cachedを実行でリモートブランチからファイルを削除して、ローカルに残すことを想定していました。
しかし、この文章のままだとわかりづらいので、修正しました。
アドバイスのほどありがとうございました。