一度コミット、プッシュしてしまったファイルをgitignoreする

よく、

「一度コミット、プッシュしてしまったファイルをgitignoreするには、

$ git rm --cached フォルダ名/ファイル名

とコマンドで打ち、gitignoreファイルに /フォルダ名/ファイル名 を書けば良い」

という記事を見るが、自分がそれを実践しても全くリモートリポジトリからファイルが消えてくれない。。

書き方が何か違うのか?と思って何十回も試してもリモートにはファイルがそのまま見えている。。。

 

 

そこで、強硬手段ではありますが、

 

  1. リモート上から物理的にファイルを削除
  2. ローカルにリモートをfetch
  3. リモートにもローカルにもファイルがなくなっているのでローカル上にファイル復元(方法は1個前の記事に書きました)(削除前にコピー→削除→新規作成→ペーストのが楽かも)
  4. gitignoreファイルに /フォルダ名/ファイル名 をかく
  5. コミット、プッシュ

これでやっとgitignoreしつつ、コミット&プッシュが出来ました。

 

gitignoreしたつもりで出来ていないと大変かと思うので、皆様も気をつけてください。(普通はできるのかもしれませんが)

 

一般的な「$ git rm --cached フォルダ名/ファイル名 とコマンドで打ち、gitignoreファイルに /フォルダ名/ファイル名 と記入」、という方法がうまくいかなかったのは何故なのだろう。。。

そもそも上記のことをしたらリモート上もgitignoreされる、という解釈が間違っているのでしょうか。。。