新しいRailsアプリをHerokuに配置しようとして、デフォルトのインデックスファイルpublic/index.htmlを削除しました。ただし、驚いたことに、Herokuでアプリにアクセスすると、表示したいインデックスではなく、デフォルトのインデックスページが表示されました。
OK、それは少し奇妙ですが、Gitがファイルを削除してもリポジトリからファイルを削除しないなどの理由があると思います。そこで私はインターネットでGitにリポジトリからファイルを削除させる方法を調べて思いついた
git filter-branch --tree-filter 'rm public/index.html' HEAD
しかし、これを実行すると、「ダーティな作業ディレクトリでブランチを書き換えることはできません」と表示されました。コミットしたばかりなので、作業ディレクトリが汚れている理由がわかりませんでした。実行git status
すると、次のように表示されました。
# On branch master
# Changes not staged for commit:
# (use "git add/rm <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# deleted: public/index.html
かなり前にpublic/index.htmlを削除していたので、これは私を混乱させました。なぜそれが唯一の変更である必要があるのですか?それでも、私は走っgit add .
てgit commit -m "..."
言った
# On branch master
# Changes not staged for commit:
# (use "git add/rm <file>..." to update what will be committed)
# (use "git checkout -- <file>..." to discard changes in working directory)
#
# deleted: public/index.html
#
no changes added to commit (use "git add" and/or "git commit -a")
それから、私はイライラし、試しgit add .
てgit status
みて、変更が単に追加されていないことを確認しました。 git add public/index.html
私にも何もしgit rm public/index.html
ませんでした git stash
それから私は問題をグーグルで検索し、誰かが試してgit stash apply
更新することを提案したStackOverflowの投稿を思いついた。私はそれをしました、そして物事はまだうまくいきませんでした。
問題は何ですか?どうすれば修正できますか?