1、git中remotes/origin/HEAD指向的分支丢失

用git命令查看分支时,会提示一个错误信息:

$ git branch -av
......
......
error: some refs could not be read

查看几个分支都正在使用,用branch -a查看到remotes/origin/HEAD指向了一个不存在的分支:

$ git branch -a
......remotes/origin/HEAD -> origin/demo
......

origin/demo这个分支以前有用过,后来删除掉了,不知道为什么remotes/origin/HEAD会指向这个分支,一般都是指向master分支。

知道问题后,打开 .git/refs/remotes/origin/HEAD 修改demo为master保存。

$ vim .git/refs/remotes/origin/HEAD ref: refs/remotes/origin/master

这时候再用branch -av就不会报最开始的错误了。

2、Git新建本地分支与远程分支关联问题:git branch –set-upstream-to

git在本地新建分支, push到remote服务器上之后,再次pull下来的时候,如果不做处理会报以下提示:

There is no tracking information for the current branch.
Please specify which branch you want to merge with.
See git-pull(1) for details.git pull <remote> <branch>
If you wish to set tracking information for this branch you can do so with:git branch --set-upstream-to=origin/<branch> dev

问题解析:

git本地新建一个分支后,必须要做远程分支关联。如果没有关联,git会在下面的操作中提示你显示的添加关联。关联目的是如果在本地分支下操作: git pull, git push ,不需要指定在命令行指定远程的分支.推送到远程分支后,你只要没有显示指定,git pull的时候,就会提示你。

解决方法:

使用命令

git branch --set-upstream-to ;

实例如下,其中test为创建的分支

view plaincopy to clipboardprint?
git branch --set-upstream-to test origin/test  

命令的最终修改都是针对config文件。

使用–set-upstream-to去跟踪远程分支。

view plaincopy to clipboardprint?
[core]  repositoryformatversion = 0 filemode = true bare = true logallrefupdates = true[remote "origin"]    fetch = +refs/heads/*:refs/remotes/origin/* url = git@192.168.1.145:android4.4.2_r1.git[branch "master"]    remote = origin merge = refs/heads/master[branch "test"]   remote = origin merge = refs/heads/test[receive]denyCurrentBranch = ignore  

注意仓库.git目录下的config文件

后续会添加更多问题。。。

打赏信息:

支付宝

微信:

使用git遇到的问题汇总相关推荐

  1. git submodule 使用场景汇总

    文章目录 1. 前言 2. 基础命令介绍 2.1 场景一:已有仓库,添加一个子模块 2.2 场景二:已有仓库,添加一个子模块的特定分支 2.3 场景三:已有仓库,更新子模块内容 2.4 场景四:已有仓 ...

  2. git部署与基本命令汇总

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://5323197.blog.51cto.com/5313197/1882532 GI ...

  3. 分布式版本控制系统Git学习资源收集汇总

    伴随着知乎上一个问题:GitHub 是怎么火起来的?被顶起200+的回答说到:Github不是突然火起来的,在Ruby社区Github其实从一开始就很流行,我们2009年搞Ruby大会就邀请了Gith ...

  4. Git学习资源收集汇总

    伴随着知乎上一个问题:GitHub 是怎么火起来的?被顶起200+的回答说到:Github不是突然火起来的,在Ruby社区Github其实从一开始就很流行,我们2009年搞Ruby大会就邀请了Gith ...

  5. git获得当前分支url_笔记本拿出来!软件工程师必须要知道的Git命令语句大汇总...

    Git是什么??? 在了解Git命令语句之前,首先要先弄清楚什么是Git. Git是一个现代版的控制系统,由Linux Torvalds从2005年开始开发的一款开源项目.现如今,Git已经被大多数软 ...

  6. Git使用相关问题汇总

    error: cannot pull with rebase: You have unstaged changes. git 执行git pull –rebase报错误如下: error: Canno ...

  7. git 工具常用命令汇总

    git是一个分布式版本控制工具,比svn要强大很多,适用于中大型的团队开发.svn比较适合中小型的团队开发.多个git版本一般用repo工具进行控制. 常用命令: 1. 仓库管理 git init  ...

  8. Git常用命令(汇总)

    Git常用命令及方法大全 下面是我整理的常用 Git 命令清单.几个专用名词的译名如下. Workspace:工作区 Index / Stage:暂存区 Repository:仓库区(或本地仓库) R ...

  9. git下载速度慢解决方案汇总(git慢,亲测第二种方法简单贼快)

    如果是文件本身过大的话,可以考虑使用: 一. 使用git shallow clone来下载 git clone https://github.com/xxx --depth 1 cd xxx git ...

  10. Git 提交常见问题总结

    使用git的时候,总会碰到一些奇怪的报错,这里汇总一下git常见的报错信息以及解决方法 文章目录 一.git 提交代码从建立本地仓库到代码提交步骤 二 拉取远程仓库部分文件 三 git 案例分析 3. ...

最新文章

  1. 因0x764fb11c的错误状态_《最强大脑》国际赛王易木又被质疑作弊,因背反答案露出了马脚?...
  2. 你的声音作为一种“武器”:人类战争中声学活动
  3. 如何在Django中以GROUP BY查询?
  4. 网络编程学习笔记(udp_connect函数)
  5. oracle随机取数据
  6. PhpStorm 快捷键大全
  7. 前端知识点梳理(二)
  8. 外设驱动库开发笔记4:AD9833函数发生器驱动
  9. linux 定时任务,压缩 日志,并删除掉 指定日期之前的 日志
  10. Java基础---继承
  11. oracle中日期格式的注意事项
  12. win10计算机变成了英文,win10变成英文【处理方法】
  13. np.maximum()
  14. 比特大陆“政变”72小时
  15. 怎么用matlab保存音频文件,Matlab用图片和音频藏文件(续)
  16. 1046: 数值统计
  17. 蓝牙的Baseband说明
  18. 2019年1月8日个人总结
  19. Java零基础学习Day01(搭配视频)
  20. 基频检测算法详细总结

热门文章

  1. jdbc心得-2-数据库与java相结合
  2. db.serverStatus()
  3. java中static和final修饰符
  4. 企业项目开发--cookie(3)
  5. Java日志框架(二)
  6. 【Python】高级函数
  7. 逻辑回归和线性回归区别
  8. jquery验证后ajax提交,返回消息怎样统一显示的问题
  9. activity的跳转
  10. 【算法导论】第15章动态规划