私たちはオフィスのLinuxサーバにあるリモートGitリポジトリを使用しています。すべてのクライアントは、Git ExtensionsがクライアントとしてインストールされているWindows PCです(msysgitで動作します)。クライアントシステムでLinux上で "git branch"を "core.ignorecase"フラグにするには?
、私は次の操作を実行しようとした場合:
git branch Branch1
git branch branch1
2番目のコマンドは、その名前のブランチがすでに存在していることを私に言って、失敗するだろう。それはgit config
でcore.ignorecase
をtrueに設定しているので、私が期待していることです。
しかし、Linuxシステムに直接ログオンして同じコマンドを実行すると、core.ignorecase
フラグがtrueに設定されていても、両方のブランチが作成されます。
私はリポジトリが大文字小文字を無視するように設定していたので、2番目のコマンドも失敗すると思っていましたが、フラグはLinuxシステムでは何もしませんでした。
すぐにソースセーフからGitへのSCMの移行を計画しているので、誰も私がこの問題を理解するのを助けることができます。この問題は私たちを驚かせています。 2人の開発者が同じ名前のブランチを作成して別のケースを作成し、結果をLinuxリポジトリにプッシュするとどうなりますか?
@meagarが正しいです。ブランチ名の一貫したケーシングを強制し、大文字小文字を除いて同じ名前のものを避けるのが一般的です。しかしメモとして、HKLM \ SYSTEM \ CurrentControlSet \ Control \ Session Manager \ kernel \ obcaseinsensitiveを設定するWindowsレジストリは、明らかにgitが望むように動作することを許可します(私はcygwinを通してgitを使用しています; msysgitが同じように動作するかどうかは不明です) )。 –