本地分支未在git中删除

时间:2019-04-10 13:21:28

标签: git github

我想从git中删除本地分支。它显示删除消息,但实际上并未删除。该代码编写如下: I have no idea what is going on this image. Please help me to delete remove-ipsum from local git

git branch -a
git checkout master
git branch -d remove-ipsum

它将删除消息显示为:已删除的分支remove-ipsum(为870afb1)。

git branch -a

但仍显示此分支。

为什么会这样?有什么解决办法吗?

1 个答案:

答案 0 :(得分:2)

简而言之:没问题,您的本地分支已成功删除。


为什么?

自从收到删除确认消息后,我们可以安全地猜测该分支的 local 版本已成功删除。

但是git branch -a不仅显示本地分支,还列出远程跟踪分支。因此,除非该分支从未被推/拉过,否则它将具有尚未被修剪的远程跟踪对象。


那还有什么要做?

要么分支由于良好的原因仍在远程存在,或者您也可以使用

将其删除
git push <remoteName> :<branchName>

git push --delete <remoteName> <branchName>

但请注意,由于此步骤尚无确认: 无论是否合并,都会删除该分支。


最后

此时,分支的本地和远程版本已不存在,您将仍然将分支显示在git branch -a输出中。什么?!为什么?

由于如上所述,远程跟踪分支是远程分支的本地副本(出于离线比较的考虑),没有被您的第一个命令删除,是我为您推荐的远程分支机构之一。

因此,要从远程跟踪分支机构列表中删除它,既然您已删除了远程副本,则可以

git fetch --prune

,它将不再显示在git branch -a输出中。