gpt4 book ai didi

git - 如何删除仍然存在于远程但不再在我的获取引用规范中的所有远程跟踪分支

转载 作者:太空狗 更新时间:2023-10-29 13:09:35 24 4
gpt4 key购买 nike

我最近重组了我的 remote.origin.fetch refspec,现在只从远程获取一小部分分支。但是,git branch -a 向我显示了很多我之前获取的远程分支,尽管现在不再获取它们。使用 git prune 没有帮助,因为那些远程跟踪分支确实存在于 remote 中。

最佳答案

robrich 的回答有一个很好的提示:你可以只删除每个远程跟踪分支(甚至远程),然后使用 git fetch 只抓取那些你现在想要的从头开始。

如果您确实尝试一起删除 Remote ,您可能需要备份您的 .git/config 文件,这样当您稍后添加 Remote 时,您可以从备份中获取每个 Remote 的设置。

但是,删除 remote 不会为我删除 remote-tracking 分支。也许我的本地 repo 协议(protocol)不好。对于遇到同样问题的任何人,我最终做的是:

# This deletes all remote tracking branches for all remotes. So be careful if you have multiple remotes.
git branch -r | xargs -L 1 git branch -rD

另外,我有很多来自远程的标签,这会减慢速度。我也是这样做的:

# Be careful! This deletes EVERY tag!
git tag | xargs -L 1 git tag -d

您可能希望将 git fetch 配置为下次不取回所有这些标签,这超出了这个问题的范围。

关于git - 如何删除仍然存在于远程但不再在我的获取引用规范中的所有远程跟踪分支,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15650184/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com