删除了'之后的分支;git fetch-p';
我尝试从项目中删除几个分支:删除了'之后的分支;git fetch-p';,git,version-control,git-branch,git-fetch,Git,Version Control,Git Branch,Git Fetch,我尝试从项目中删除几个分支: leo:Project leo$ git push origin --delete effects To https://github.com/gituser/Project.git - [deleted] effects leo:Project leo$ git push origin --delete viewport To https://github.com/gituser/Project.git - [deleted]
leo:Project leo$ git push origin --delete effects
To https://github.com/gituser/Project.git
- [deleted] effects
leo:Project leo$ git push origin --delete viewport
To https://github.com/gituser/Project.git
- [deleted] viewport
但是在fetch--prune
之后
获取后,删除不再存在的任何远程跟踪引用
存在于远程服务器上
我仍然删除了本地计算机上的分支:
leo:Project leo$ git fetch -p
leo:Project leo$ git branch -a
develop
effects
* master
viewport
remotes/origin/HEAD -> origin/master
remotes/origin/develop
remotes/origin/master
有什么建议吗 命令完全按照它说的做了,它删除了“远程跟踪引用”。这意味着连接到远程存储库上的分支的任何本地分支都会断开连接,仅此而已。这特别意味着,当地分支机构之后仍然存在 要删除分支,请使用git branch-D,首先查看分支的内容以确保不会丢失任何提交。
git fetch--prune
仅删除工作树中远程删除的远程引用。远程引用位于remotes/*
下(例如,remotes/origin/master
)
git-fetch--prune
不会删除本地分支-即使本地分支跟踪远程引用,它也不会被删除(例如,通过设置git-branch--set-upstream=origin/master
)。这是有意的。假设您有一个本地分支,上面有一些提交,然后有人删除了远程分支,您的本地更改消失了
但是,为了删除本地分支机构,发布了git branch-D NAME,请确保您对可能要保留的分支没有提交。也许您需要调用
git branch--将上游设置为=origin/master
?effects和viewport是本地分支,不会被git fetch prune删除。@MrTux我可以检查分支没有任何远程跟踪引用吗?@d33tah它没有帮助,请参阅updremote跟踪引用位于remotes/*/下,这些引用将被git fetch prune删除,但本地分支不会删除(即使这些引用跟踪远程跟踪引用)