git 删除远程分支 重命名远程分支
上一篇介绍过关于 git 打版本,推送本地版本到远程git服务器
这一篇和大家分享下 删除/重命名远程分支.
其实关于分支的本地操作,之前就有一篇关于git本地分支和远程分支的操作介绍 ,所以关于本地如何创建/查看分支,推送分支,查看远程分支全部点击这个链接查看.
zhangzhi@moke:~/code/demo$ git branch -a * dev master new remotes/origin/HEAD -> origin/master remotes/origin/dev remotes/origin/master remotes/origin/new
上面是我们查看远程分支的列表. dev ,master ,new
(1) 删除远程分支
zhangzhi@moke:~/code/demo$git push origin --delete new
上面的指令操作我们可以删除远程 new 分支,就是这么简单.
但是这里往往会碰到一种情况.
我删除了远程 new 分支后,团队其他成员pull 代码的时候并不会主动把他们本地的 new 分支删除掉.就是说远程一个不存在的分支,获取代码时不会自动把本地对应的同名分支删除. 这该怎么办呢?
这时我们获取代码 fetch 时需要加一个参数 -p
zhangzhi@moke:~/code/demo$git fetch -p
这样就可以在拉取远程分支时,自动清理 远程分支已删除,本地还存在的对应同名分支.
(2) 重命名分支
重命名分支的基本步骤是这样的,首先删除远程分支,然后重命名本地分支,然后提交命名后的本地分支到远程.
zhangzhi@moke:~/code/demo$git push origin --delete new
首先删除 远程分支 new
zhangzhi@moke:~/code/demo$git branch -m new newtest
重命名本地分支 new 为 newtest
zhangzhi@moke:~/code/demo$ git push origin newtest
然后推送本地 newtest 分支到远程.
在删除分支的时候,也许会遇到错误:
这时首先确定下当前默认分支是不是你正要删除的分支,如果是,请切换默认分支后再删除即可.