我在Github上创建了一个存储库。我有两个开发环境,我在两个版本上都使用Github for Windows访问Github。
在两个开发环境中的一个上,我删除了一个分支,并在Github for Windows中单击了“synchronize”。该分支在Github中被删除了。当我从我的其他开发环境同步时,有一个选项可以“发布”要删除的分支,但没有一个可以删除它。
如何告诉git或Github for Windows进行完全同步,包括删除过时的分支?
答案 0 :(得分:4)
是和否 - 取决于您的真实含义"删除当地分支"。
不,让远程存储库删除正常情况是不可能的 在本地存储库中分支。
是的,可以让Git在您当地删除远程分支机构 特定于已删除的分支的存储库 命名为remote (例如" origin")。
这是通过运行
来实现的git remote prune origin
或
git fetch --prune
请先了解Git的远程存储库模型是不对称的:本地存储库中的分支名称与远程存储库中的分支完全匹配的事实没有意义 到Git。
原因有两方面:
因此,虽然Git有某些助手可以将本地分支与特定的远程分支联系起来,但这些联系是不对称的。 特别是,Git将您当地的历史视为"神圣的", 对它的破坏性操作需要你明确的行动。