Git命令之本地分支与远程分支支关联/解除关联

1.应用场景

在实际的工作生活中,往往需要将本地的分支和远程分支关联,这样我们就可以使用git pull命令来更新拉取最新的代码,并使用git push命令将自己本地的修改推送到远程仓库。但是如果此时你本地关联的远程分支被删除了,那么就会出现你无法使用git pull,和git push命令。使用一个例子说明这个场景。 我们可以使用下面的命令查看自己本地分支与与远程分支的关联情况:

kotlin 复制代码
git branch -vv

如上图所示,我们可以看到本地的master分支和远程的origin/master分支关联,nololibs_for_git 和远程的origin/nololibs_release 关联。 这时候假设我们将远程分支origin/nololibs_release删掉,这时候我们执行git pull命令就会报错,如下所示: 意思就是我们之前关联的远程分支不存在了。

2.关联远程仓库中存在的分支

要解决git pull报错的问题就需要我们重新关联一个远程仓库中存在的分支。这时候假设远程仓库中有 一个分支为origin/nololibs_for_git,我们只需要执行下面的命令:

kotlin 复制代码
git branch -u 远程分支名
// 例如:git branch -u origin/nololibs_for_git

也可以使用下面的命令关联远程分支:

kotlin 复制代码
git branch --set-upstream-to 远程分支名
//例如: git branch --set-upstream-to origin/nololibs_for_maven

执行完上面的命令后,我们可以使用git branch -vv 查看下当前的本地分支和远程分支的关联情况: 我们可以发现本地分支nololibs_for_git和远程分支origin/nololibs_for_git以及关联上了。

3.解除本地分支与远程分支的关联

比如我们有时候会想将远程分支改个名字啥的,或者就是单纯想解除与远程分支的关联,这时候可以使用下面的命令解除本地分支与远程分支的关联:

kotlin 复制代码
git branch --unset-upstream

例如:假设现在我想解除本地的nololibs_for_git和远程的origin/nololibs_for_git的关联。 首先先用git branch -vv 命令看下分支的关联情况: 可以发现本地的nololibs_for_git和远程的origin/nololibs_for_git是关联着的,这时我们执行命令git branch --unset-upstream,再使用git branch -vv命令查看分支关联情况。 可以看到只有本地的分支了,远程的分支以及没有了,这时候使用git pull命令会提示关联远程分支 这时候我们再执行关联远程分支的命令git branch -u 远程分支名 就可以使用了。

相关推荐
Flynt4 小时前
HN 382分热文里的终端小技巧,我实测了一遍,git pickaxe 最值
git·命令行
横木沉13 小时前
IntelliJ IDEA 无法识别 Git:Git is not installed 问题解决
java·git·github·intellij-idea
为你学会写情书15 小时前
Git 学习指南:从日常命令到多人协作与提交规范
git
东小黑16 小时前
Git 仓库操作与 VSCode 使用指南
git·vscode·gitee
拼图2091 天前
Git常用语法
分布式·git·学习
ShineWinsu1 天前
对于Git:基础操作的超详细保姆级解析
linux·c++·git·面试·备份·管理·版本控制器
沉迷...1 天前
Git skip-worktree 使用笔记(本地忽略配置文件)
javascript·git
解道Jdon2 天前
JDK 27发布:紧凑对象头、G1默认、量子安全TLS
ide·windows·git·svn·eclipse·github·visual studio
天天喝旺仔2 天前
Git 内部原理深度解析:从 blob/tree/commit 对象到 packfile 与垃圾回收
数据结构·数据库·git·算法·哈希
艾莉丝努力练剑2 天前
【Git:综合复盘】Git 原理与使用
大数据·人工智能·git·elasticsearch·面试