今天早上准备拉取master最新代码时发现无法拉取,异常报错如下:
Update failed
cannot lock ref 'refs/remotes/origin/2020_06_03_V1.102_edu': is at b6f203d110ad518d6e23191464acc054d0fad862 but expected ca3ba3600a1536bb03222fd67b7693e521c5b3e6
From dev.jiuaoedu.com:education/edu-admin
! ca3ba3600..79c5e023b 2020_06_03_V1.102_edu -> origin/2020_06_03_V1.102_edu (unable to update local ref)
后切换到其他分支依旧无法拉取最新代码。此时都是通过idea的界面进行拉取的操作。
其他同事通过git命令能够拉取到最新代码,于是查看报错的对应分支,发现该分支2020_06_03_V1.102_edu之外,有另一个2020_06_03_v1.102_edu的分支,区别就是大小写V。
将小写v对应的分支,删除之后,就恢复正常了。
问题原因:
win上的git默认设置为大小写不敏感,所以如果git上已经有大写命名的分支,而且你本地分支上自己又新建了小写的分支,这时候拉远程代码是有冲突的。
解决方案:
1.Win上的Git设置为大小写敏感的命令如下:
git config core.ignorecase false
2.删除不合规的分支,避免出现只是大小写不同的分支!