さわらブログ

さわら(@xhiroga)の技術ブログ

フォルダ名を大文字→小文字に変えようとしたら、2つできてしまった件を解決した

私がGitで管理しているメモには、もともと大文字のフォルダがありまして、それをテキストエディタから小文字に変更しました。
ex) Memo → memo
ところが!メイン端末ではフォルダ名の変更が反映されているものの、リモートではMemoとmemoがふたつできてしまい...

以下のように解決しました。

大まかな流れ

  1. メイン端末でケース設定を変更し、コミット・プッシュ
  2. 大文字・小文字の両方のフォルダがある別端末でケース設定を変更し、フォルダ名を変更してコミット・プル・プッシュ
  3. 別端末のコミットをメイン端末にプル

ケース設定の変更方法

デフォルトの設定がケース違いを無視なので、大文字小文字を同じ種類の文字として認識しません。  

git config core.ignorecase # 現時点の設定を確認可能(ちなみに設定はレポジトリ毎ではなく端末毎)
git config core.ignorecase false

フォルダ名の変更方法

Macだと?git mvでフォルダ名を大文字→小文字に変更できないらしく、一旦別のフォルダ名を経由しました。

git mv Memo _Memo
git mv _Memo memo

こんな感じ!

参考 https://qiita.com/shoheiyokoyama/items/0fd9f688a269bbdc9da3