git pull时遇到git pull error :error: remote ref is at but expected问题的解决办法
来源:互联网 发布:卡祖笛 淘宝 编辑:程序博客网 时间:2024/05/16 14:13
今天在拉取项目新版本的代码时,遇到了一个问题,对项目最新的代码进行git pull,报错:
error: cannot lock ref 'xxx': ref xxx is at (一个commitID) but expected (另一个commitID)
一开始我以为是分支出现了问题,索性就把该分支给删掉了,删掉之后重新由远程分支创建本地分支,一番操作之后发现根本没有用,还是会报这个错。一番搜索与操作之后,还是没能把这个问题解决,(其实在搜索到的某个stackoverflow页面中已经提到了这个问题,但是我没有看到)于是寻求组里高手的帮助。经过高手的一番指点,终于把这个问题给解决了。
原因
首先说一下,出现这个问题的原因:出现这个错误的原因,是因为在你的远程分支中,有名字相同的分支(这个相同是不区分大小写的),在我遇到的问题里,就是因为我们项目的远程分支里有两个分支除了首字母大小写不同之外,别的完全相同,所以才会出现这种错误。具体好像是要看你机器的平台,Windows与OSX这种大小写不敏感的系统平台就会出现这种情况。
解决方案
下面说一下解决的办法
今天我采用的方法是直接在终端里输入:
git update-ref -d (名字相同的分支名)
然后再git pull,就一切顺利啦。
stackoverflow上还有人提供了另外一种解决方式:
- 首先将错误的远程分支删除
- 在终端运行
git remote prune origin
也会奏效,不过这样会影响到远程分支。上一种解决方法则不会影响到远程分支。
总结
为避免这种情况的出现,很重要的一点就是再给分支起名的时候一定要注意,,分支的名字应该有其特定的意义,而且注意不要与其他分支重名,不要只用字母的大小写来区分两个分支
0 0
- git pull时遇到git pull error :error: remote ref is at but expected问题的解决办法
- git pull error: remote ref is at but expected
- git pull时遇到error: cannot lock ref 'xxx': ref xxx is at (一个commitID) but expected的解决办法
- Git git pull error
- git pull remote branch cannot find remote ref
- git pull时遇到的问题及解决方法
- git push remote error解决办法
- git pull wrong branch cause merge error
- git pull error (no local branch)
- git pull 时出现 error: Your local changes to the following files would be overwritten by merge的解决办法
- git pull 时出现 error: Your local changes to the following files would be overwritten by merge的解决办法
- git pull 时出现 error: Your local changes to the following files would be overwritten by merge的解决办法
- git pull不了的问题
- git pull 遇到本地有修改,不能merge的问题
- Git pull 或 merge遇到的一些问题
- git pull 提示pull不下来解决办法
- git pull问题
- git pull的更新错误解决办法
- 第十三周项目—阅读、修改和运行关于交通工具类的程序(3)
- 安卓菜鸟的理解之路之:match_parent、fill_parent与wrap_content的区别与作用
- android NDK、JNI技术详解及NDK在Android系统架构中的位置关系
- ios中object c纯代码开发屏幕适配处理方法
- 旋转ImageView
- git pull时遇到git pull error :error: remote ref is at but expected问题的解决办法
- C#之三十九 抽象工厂模式
- ASP常用代码段
- TimePickerDialog样式配置与TimePicker模式选择
- [bzoj1455]罗马游戏
- 安卓xml使用第三方框架Xstream解析
- *p++与(*p)++与*(p++)
- VIM命令
- 高并发java