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 分支到远程.


在删除分支的时候,也许会遇到错误:

这时首先确定下当前默认分支是不是你正要删除的分支,如果是,请切换默认分支后再删除即可.

回到顶部