每当我输入命令
git branch -a
以查看我本地和远程的所有分支时,总是会看到已经合并且关闭的旧分支。如何清除这些在我的本地git或github中不存在的分支?git branch -a
以查看我本地和远程的所有分支时,总是会看到已经合并且关闭的旧分支。如何清除这些在我的本地git或github中不存在的分支?git branch -a
会显示它们,那么它们是存在于本地的。这就是git branch
列出的:存在于本地的内容。origin/master
)也属于你自己,但是在连接到origin
上的另一个Git并从中获取新内容时,你的Git将自动将其与其看到的其他Git同步。也就是说,如果另一个Git有一个名为feature/tall
的分支,当你将Git连接到它们的Git并从中获取新内容时,你的Git将创建或更新你的origin/feature/tall
。feature/tall
,因此创建了你的origin/feature/tall
,昨天他们删除了他们的feature/tall
,你的Git将继续保留你的origin/feature/tall
。要告诉你的Git:如果他们已经删除了它们的内容,请删除我的复制它们的远程跟踪名称,你有几个选项:
git fetch origin --prune
:这将调用origin
上的Git,获取他们的分支列表,并确定要删除哪些origin/*
名称,同时更新origin
。git remote prune
:这将调用所有远程Git。如果你只有一个名为origin
的远程,那么这会产生相同的效果。将fetch.prune
配置为true
:
git config fetch.prune true
现在所有的 git fetch
操作将会像你使用了 --prune
选项一样。
你的分支是你自己创建和删除的。如果你不再需要分支 feature/short
,就将其删除。
refs/remote/origin/branchname
)。您可以使用git fetch --prune
命令删除所有不再存在于远程存储库中的远程跟踪分支。该命令不会触及您的任何本地分支。"最初的回答"git branch -d <YOUR-BRANCH-NAME>
如果你已经将一个分支的所有修改合并
或者
git branch -D <YOUR-BRANCH-NAME>
如果你想要删除的分支中有未合并的修改。
-D
作为强制删除操作。