Git远端删除的分支,本地依然能看到 git remote prune origin

发布时间:2024年01月10日

在远端已经删除ylwang_dev_786等三四个分支,本地git branch -a 时 依然显示存在。
在这里插入图片描述
执行

git remote show origin 

会展示被删除的那些分支
在这里插入图片描述

在这里插入图片描述
当你在Git远程仓库(如GitLab)上删除一个分支后,这个变更不会自动同步到每个开发者的本地仓库。本地仓库保留了远程分支的引用作为缓存,即使这些分支在远程仓库中已经被删除。这就是为什么你在执行git branch -a时仍然可以看到origin/ver_791

git remote show origin命令显示的信息也是基于最后一次与远程仓库通信时的状态。所以,如果远程分支已经被删除,但你的本地仓库没有更新其远程跟踪的分支信息,那么它将标记为stale(陈旧的)。

为了解决这个问题,并让你的本地仓库反映远程仓库的当前状态,你需要修剪(prune)掉本地不存在于远程仓库的分支引用。你可以通过以下命令来实现:

git fetch --prune

或者是:

git remote prune origin

这两个命令都会删除那些已经从远程仓库中删除但仍然存在于本地的远程跟踪分支。

使用git fetch --prune将同时获取最新的远程仓库数据并删除任何过时的远程跟踪分支。而git remote prune origin只专注于删除过时的分支,不会获取新的远程仓库数据。

在执行上述命令后,再次运行git branch -a时,你就不应该再看到origin/ver_791分支了。

文章来源:https://blog.csdn.net/iblade/article/details/135509865
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。