ファイル名が違ってgitの状態がおかしくなる
原因もなぜそうなったのかもよくわからない問題だけど一応記す。
git + github で readme ファイルを修正してコミットしてプッシュしてマージした。したが、どうもおかしく変更が適用されていないっぽい。
コミット忘れかと思ったがコミットしているし、readme ファイルそのものは変更されていてリポジトリのトップに表示される readme だけ変更されていなかった。
あららおかしいぞと思いつつ VSCode の git を見るとコミット対象に README がある。
> git status
をしてみたところコミットされていないしインデックスに登録もされていないとのこと。
おかしいぞと思いつつ > git diff
をしたところ修正前のものと修正後のものが出た。ただ、修正自体はコミットしたはずである。
実際、>git add -A
や >git commit -am "commit"
とかやってもコミット対象はないよ、加えるファイルもないよと出る。
VSCodeの機能でコミットしようとすると今度はエラーが発生したと出た。
よく見たところ追加対象の “README” と実際にファイルとして存在する “readme” は違うファイルのようで、どういうわけか二つの名前のファイルが1つの存在として扱われているため起きていたみたいだった。詳しいことはわからん。でもファイル名が違っていた。
とりあえず対処法としては
> git reset --hard HEAD
で戻して
> git status
で確認。この時点で変更はないと出る。たぶん修正前に戻っている。
そしたら
> git mv README readme
で名前変更。あとは
> git add -A
> git commit -am "commit"
でコミットして
> git status
あたりで確認して、問題なければプッシュ。とりあえずこれでどうにかなった。
原因はわからないが、ファイル名に気を付けるといいと思われる。