之前使用了git clone 直接把github上自己项目的一个分支拉到了本地,输入:

git status>Your branch is up-to-date with 'origin/dev'.

表明这时候本地这个分支已经和远程的分支origin/dev已经保持关联。
当本地和远程的该分支有版本不同时,关联后能够很好的知道本地分支和远程分支的差异,以及在提交和更新时也能有很大的方便。
但是我删除了和本地关联的远程分支时,这时候输入:

git status
>Your branch is based on 'origin/home_branch', but the upstream is gone.

这时候提示基于远程分支origin/home_branch已经不见了,失去了关联依然还是可以提交和更新的,但是在效率上会差很多,所以我在网上找了很久,终于找到了在删除远程分支后如何重新让本地分支关联其他分支。

https://stackoverflow.com/questions/21609781/why-call-git-branch-unset-upstream-to-fixup
这是一篇很好的文章解决了我的问题,英文看着头大的同学直接看我写的好了。


You’re not supposed to need to know the exact mechanics of how git sets up a local branch to track a remote one, but they are relevant below, so I’ll show how this works. We start with your local branch name, source. There are two configuration entries using this name, spelled branch.source.remote and branch.source.merge. From the output you showed, it’s clear that these are both set, so that you’d see the following if you ran the given commands:

你不用知道git是怎么把远程和本地分支关联起来的,输入如下两条命令(注意:这里是以本地的source为例):

git config --get branch.source.remote
>origin

这条说明返回的是本地分支连接的远程名称为origin 一般来说默认远程都是这个名字

git config --get branch.source.merge
>refs/heads/master

这条说明本地的这条source分支是和远程的master分支关联的(注意:即使远程的master分支已经被删除了,这里还是会保留master的关联,所以这才是这个问题的关键所在)
联系这两条内容,可以知道远程名为origin,并且本地分支source所关联的远程分支为master
好的,我们接着输入:

git branch -a

这里能把本地的分支和远程的分支全部打印出来,其中对应的origin(前面提到的远程名)的分支就是远程的分支,如果远程的分支上没有我们本地关联的分支,就会出现本文所要解决的问题。

如何解决呢?


这里是解决方法,–set-upstream-to命令来更改本地分支关联的远程分支,这个命令会把branch.source.remote和branch.source.merge都更改

输入(这里把本地分支的关联更改为远程的source分支,确保远程的source事先已经存在):

$ git branch --set-upstream-to=origin/source

这样就更改成功了
输入:

git status
>Your branch is up-to-date with 'origin/source'.

本地分支已经关联上远程的source了。

解决git中upstream丢失问题Your branch is based on 'origin/xxxx', but the upstream is gone.相关推荐

  1. 如何解决Git中的合并冲突

    如何解决Git中的合并冲突? #1楼 对于想要半手动解决合并冲突的Emacs用户: git diff --name-status --diff-filter=U 显示所有需要解决冲突的文件. 依次打开 ...

  2. 解决git 中 error 10053 问题

    解决git 中 error 10053 问题 问题描述: git pull 时,报错:fatal: unable to access 'https://github.com/huangyuanyin/ ...

  3. 解决Git中打开gitk图形界面时中文部分乱码

    解决Git中打开gitk图形界面时中文部分乱码 gitri图形日志gitk打开时,看到中文时乱码,不用着急按照下面方法立刻解决! 分析:这大部分是因为编码格式的问题,建议使用utf-8 without ...

  4. 解决git添加远程仓库提示出错信息:fatal: remote origin already exists

    解决git添加远程仓库提示出错信息:fatal: remote origin already exists. 解决办法如下:1.先输入$ git remote rm origin2.再输入$ git ...

  5. 解决git中出现的“fatal ‘xxxx‘ does not appear to be a git repository”错误的方法

    今天来分享一下我在使用git中出现的一个错误提示,话不多说,我们直接来分析~ 这个错误是我在通过SSH方式pull远程仓库时候出现的,错误提示如下: fatal: 'xxx(你的仓库别名)' does ...

  6. 解决Git中fatal: refusing to merge unrelated histories

    Git的报错 在使用Git的过程中有时会出现一些问题,那么在解决了每个问题的时候,都需要去总结记录下来,下次不再犯. 一.fatal: refusing to merge unrelated hist ...

  7. 解决Git中fatal: refusing to merge unrelated histories(亲测)

    Git的报错 在使用Git的过程中有时会出现一些问题,那么在解决了每个问题的时候,都需要去总结记录下来,下次不再犯. 一.fatal: refusing to merge unrelated hist ...

  8. 解决Git中的fatal: refusing to merge unrelated histories

    创建了一个全新的项目,在开发分支开发完成后,但是在进行Merge Request的时候出现如下问题: 要求我进行rebase,我想是因为远程项目的RELEASE(直接从master创建的分支,所有的代 ...

  9. 怎么解决Git中出现 “LF will be replaced by CRLF“ 警告

    Windows中使用CRLF标识一行的结束,而在Linux/UNIX系统中只使用LF标识一行的结束.CRLF即Carriage-Return Line-Feed的缩写.通常情况下,Git库不会自动修改 ...

最新文章

  1. enable_shared_from_this理解
  2. stm32l0的停止模式怎么唤醒_探索者 STM32F407 开发板资料连载第二十二章 待机唤醒实验
  3. C/C++程序基础 (八)数据结构
  4. requests-处理不信任的ssl证书
  5. 漫步数理统计三十二——中心极限定理
  6. 测试基础-07-测试报告编写
  7. 关于Flex2的资料
  8. IP子网编址和无类域路由CIDR
  9. [转载] python 字典查找_python字典的增,删,改,查
  10. VPC、快照、重置密码、重启、关机、扩容
  11. 高等数学导数公式、微分公式和积分公式大全
  12. 苹果移动设备(iPhone/iPad)分辨率汇总
  13. U盘装Win11教程 系统之家装机教程
  14. Android更换皮肤解决方案,2021年哔哩哔哩Android高级面试题及答案
  15. HDMI 转换芯片——MS1836S
  16. 离散数学复习:命题逻辑的推理理论
  17. 3d云html原理,云渲染是什么原理?
  18. 阿峥教你实现UITableView循环利用
  19. js,工具方法,正则表达式判断是否为英文单词
  20. 前端简史之纵横:Node东出

热门文章

  1. 惊蛰恰逢“龙抬头”,流感高峰季来袭,你准备好了吗?
  2. 2000元 组装车 思路
  3. 如何安装 Ubuntu 22.04 LTS 桌面版 ?
  4. SQL Server学习笔记6——LTRIM()函数(去掉空格)
  5. 女生在IT计算机行业适合什么工作
  6. 深度学习基础之-2.3简单的神经网络(单个输入/多个输入)做线性回归+特征值归一化
  7. 【LOJ6570】毛毛虫计数
  8. 基于arduino +机智云物联网平台的阳台生态控制系统的设计
  9. 为什么很多人吐槽谭浩强的C语言程序设计?
  10. Open judge 1.8.3