如果我的本地分支从 GIT 存储库中删除,我该如何清理它们

Ash*_*wal 15 git github

如果从 GIT 存储库中删除了所有本地分支,如何删除它们。有什么命令吗?。我不想通过命令 gitbranch -D/-dbranch-name 来一一进行。

Roh*_*del 15

删除在原点删除的分支的信息

当 上的分支被删除时origin,您的本地存储库不会注意到这一点。

您仍然拥有这些分支的本地缓存版本(这实际上很好),但 gitbranch -a仍会将它们列为远程分支。

您可以像这样在本地清理该信息:

git remote prune origin
Run Code Online (Sandbox Code Playgroud)

您已删除分支的本地副本不会因此被删除。

使用以下方法可以达到相同的效果

git fetch --prune
Run Code Online (Sandbox Code Playgroud)

您也可以将其设置为默认值。


Sha*_*een 7

仅供参考,如果有人稍后查看此页面

相同的细节相当多

开发连接页面

我们可以用于完全合并本地分支的命令是

git branch --merged | egrep -v "(^\*|master|dev)" | xargs git branch -d
Run Code Online (Sandbox Code Playgroud)


sfl*_*che 5

删除(或“修剪”)不在存储库中的本地分支

git remote prune origin
Run Code Online (Sandbox Code Playgroud)

修剪

删除 <name> 下的所有过时跟踪分支。这些过时分支已从 <name> 引用的远程存储库中删除,但仍可在“remotes/<name>”中本地使用。

使用 --dry-run 选项,报告将修剪哪些分支,但不实际修剪它们。

  • 已删除分支的本地副本不会因此被删除。 (6认同)