最近因为公司项目的需要在研究学习git,碰到个问题,我将远程分支直接删除了,在本地并有删除于是我用 git branch -a 还可以可以看到远程存在此分支。
$ git branch -a master * test remotes/origin/HEAD -> origin/master remotes/origin/master remotes/origin/newcarapi-test remotes/origin/test
remotes/origin/newcarapi-test (其实是已经删除的,但是还是存在) 使用 git remote show origin 查看remote地址,远程分支,还有本地分支与之相对应关系等信息。
$ git remote show origin warning: redirecting to http://gitlab.xcar.com.cn/product_library/newcar-api.git/ * remote origin Fetch URL: http://gitlab.xcar.com.cn/product_library/newcar-api Push URL: http://gitlab.xcar.com.cn/product_library/newcar-api HEAD branch: master Remote branches: gao.feifei new (next fetch will store in remotes/origin) master tracked refs/remotes/origin/newcarapi-test stale (use 'git remote prune' to remove) test tracked Local branches configured for 'git pull': master merges with remote master test merges with remote test Local refs configured for 'git push': master pushes to master (fast-forwardable) test pushes to test (up to date)
根据提示我们可以看到远程的已经不存在了,并且让使用(use 'git remote prune' to remove)此命令 $ git remote prune origin warning: redirecting to http://gitlab.xcar.com.cn/product_library/newcar-api.git/ Pruning origin URL: http://gitlab.xcar.com.cn/product_library/newcar-api * [pruned] origin/newcarapi-test
执行完命令后在次用 git branch -a 查看,可以看到已经被删除 (git branch -r 只查看远程的分子)
$ git branch -a master * test remotes/origin/HEAD -> origin/master remotes/origin/master remotes/origin/test