1 min read
GitHubで変更を加えていないのにChangesに表示された
MacさんのOSをクリーンインストールしてGitHub環境を構築しようとして躓いた(?)
キャプチャがこちら

通常は変更した箇所がマーキングされて表示されるが、なにも表示されていない。
とりあえずこのままではなにがなんだかわからないのでcommit&syncしてみた。
そしてGitHubのサイトのcommitの履歴を見てみると

とても納得。
ファイルをバックアップからコピーしたときにパーミッションが変わったのね、なるほど。
前にも一回こんなことあったなぁとか思いながら調べてみた。
git config core.filemode false
git filemodeで検索したらすぐにでてきた。
とりあえずこれでChangesに出てくることは回避できた。
ただこれは一つのリポジトリだけじゃなくて全部のリポジトリに共通させてしまいたいので
git config --global core.filemode false
これでよし。すべてのリポジトリに対してfilemodeを無視するようにできた。
直前のcommitに戻す
「ディレクトリ変更」という無駄なcommitをしてしまったため、それを取り消す
// commitを取り消したい対象のディレクトリに移動
cd workspace/ChinachuClient
// 直前のcommitをなかったことに
git reset --hard HEAD^
// pushをするが、強制的にpushをしてやらないとエラーを吐かれる
git push -f
これで直前のcommitがなかったことになる