我的远程存储库中有两个分支。
master
在myFolder/myFile
文件夹下有一个文件。my-branch
有一个push commit,将myFolder/myFile
(camelCase)重命名为myfolder/myFile
(flatcase)。
我已经将它克隆到我的保留大小写的MacOS环境中的两个本地存储库中,在.git/config
文件中设置ignorecase = true
,并签出这两个分支
- 当我使用第一个本地存储库在这两个分支之间切换时,使用正确的case (
myFolder
或myfolder
)正确更新文件夹。此本地存储库是新克隆的。 - 但不知何故,当我用第二个本地存储库在两个分支之间切换时,文件夹的案例没有更新,它保持不变。这个本地存储库较旧,在此之前已经完成了一些git操作。
我如何找出为什么这两个本地存储库的行为不同?它们都有完全相同的.git/config
文件
我如何修复第二个存储库,以便在切换分支时正确更新文件夹案例?
我如何修复第二个存储库,以便在切换分支时正确更新文件夹案例?
作为一种解决方法,由于新克隆的存储库的行为符合预期,您可以:
- 重命名旧的第二个存储库
- 将(第三次)存储库克隆到它的位置
- 添加(如果需要的话)旧的和重命名的第二个存储库作为远程,以导入在新的(第三个)新存储库 中完成的提交。
还请注意,您可以使用git worktree
命令为每个克隆存储库使用多个工作树,这将避免所有"切换分支/祈祷文件夹被正确更新"。