问题描述
如果我检查远程存储库上的分支列表,我只会看到那些应该存在的分支,但是如果我在本地使用:
git branch -a
我仍然看到在合并拉取请求后使用 delete this branch
功能删除的那些
如何从 git branch -a
中“隐藏/删除”这个分支?
解决方法
您可以将 --prune
选项用于 git fetch
。如果您的遥控器是 origin
,它看起来像 git fetch --prune origin
。
请注意,这也会执行常规提取。
如果你想自动设置这个,你可以运行git config remote.origin.prune true
,这将导致以后的fetches和pulls自动修剪删除的远程分支。
我添加这个答案只是为了给@bk2204 答案添加一点。
如果远程中的一个或多个分支被删除,并且您不想在本地存储库中看到远程已删除的分支,那么您可以使用以下 git 命令仅删除已删除的远程分支。
git remote prune
这只会为您提供有关已删除的远程分支的信息,并从本地删除相同的分支。
命令 git fetch --prune
或 git fetch -p
首先获取远程当前状态,然后删除远程中不存在的本地分支的引用。
我可以说 git fetch --prune
更有可能是 git fetch
和 git remote prune
的组合。请注意,git 在修剪之前首先获取远程状态。
现在,您可以根据要求或要求选择其中之一。 ?✨