Gitでファイルの大文字小文字を区別するかを後から切り替える
Gitでプロジェクトを管理していたのですがGitがおかしくなってしまいました。
おかしくなった原因は明確で、
今まで「ファイル名の大文字小文字を区別しない」というGitの設定でコミットなどをしていたのに
途中から「ファイル名の大文字小文字を区別する」という設定に変えたからです。
↓のコマンドにて
git config core.ignorecase false
【この設定に変えたかった理由は】
パッケージ名の大文字小文字を変更
Javaプロジェクトなので自動的にディレクトリ名も大文字小文字が変わる
ソースないの package 部分も自動リファクタリングにより大文字小文字が変わる
↓
コミット
↓
パッケージ名を変える前の過去のコミットに戻す
↓
ソース内の package 部分は大文字小文字変更前に戻る
ディレクトリは大文字小文字が変更前に変わらず、変更後の状態のまま
となるからです。
途中から大文字小文字を区別するようにするにはどうすればよろしいでしょうか?
ちなみに、SourceTreeを使用しており、リモートリポジトリもあります。
以下追記
【要点まとめ】
・masterブランチとBブランチがあるとする
・どちらも「ファイル名の大文字小文字は区別しない」として今までコミットされてきた
・先行するmasterブランチで作業中に「ファイル名の大文字小文字も区別されないと困る」事が発覚
【現状】(ファイル名もディレクトリ名も同じ)
・masterブランチでとあるファイルのファイル名の大文字小文字を変更
(例 aaa/bbb.png → AAA/bbb.png)
・Bブランチに切り替えてみると
過去の状態(aaa/bbb.png)であるはずのBブランチに切り替えても
ファイル名が「AAA/bbb.png」になってしまう
【理想】
Bブランチに切り替えた時、Bブランチは「aaa/bbb.png」の状態だったので「aaa/bbb.png」にファイル名が戻って欲しい。