我正在尝试删除一个远程git分支,但是这个过程并没有像我期望的那样"完全"删除分支.
比方说,我正在删除一个名为的分支mybranch.为此,我运行以下命令,
git push origin :mybranch
Run Code Online (Sandbox Code Playgroud)
这将按预期删除分支,如果我这样做,git branch -a则不再在本地或远程列表中显示.
我遇到的问题是,如果我去另一个人的机器做了一段git pull时间分支存在,并且他们执行了一个git branch -a,它仍然在他们的列表中作为远程分支.
我们试过多个命令,pull,gc,prune,但没有什么是更新这个列表,而删除远程分支.
是否有一个命令同步(我只能假设是)远程分支列表的本地缓存,并删除任何不再存在的远程分支?
jam*_*san 46
在他们更新他们的遥控器之前,他们的git将不知道存储库中发生了什么.一旦他们完成更新(通过git fetch或git remote update),git remote show origin将正确显示他们对上游不再存在的分支有本地跟踪分支.此时,git remote prune可用于删除陈旧的本地分支.