天翼云代理,天翼云代理商,北京代理商
天翼云折扣专线:400-150-1900(全国市话)

如何删除远程 git 分支

2022-10-26 06:14:32

删除 git 本地分支比较容易,可直接使用命令:

git branch -d
						
  • 1.

但是要删除一个远程的 git 分支,就不一样了,我们今天介绍一下删除远程 git 分支的步骤。

查看远程分支列表

要查看远程 git 仓库中的所有分支,可使用 -a 选项,如下所示:

$ git branch -a • master
dev
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/dev
						
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

上述是在 clone 的一个 dust 仓库中运行 git branch -a 的输出结果。我们把这个结果分解来看:

  • remotes:指远程服务器上的存储库(如 GitLab、Gitea 或 GitHub);
  • origin:系统中远程仓库的别名;
  • HEAD:默认分支,如果没有指定分支,则 clone 该分支。

如上所述,上述代码中第 4 行, remotes/origin/HEAD -> origin/master,表示远程仓库默认的分支是 master 分支。

最后两行表示在远程仓库中有两个分支,即 master 和 dev。

另外一种查看远程仓库信息的方法是使用 git remote 命令,如下所示:

$ git remote show origin
• remote origin
Fetch URL:git@github.com:liugl/proj.git
Push  URL:git@github.com:liugl/proj.git
HEAD branch: master
Remote branches:
master  tracked
dev     tracked
Local branches configured for 'git pull':
master  merges with remote master
dev     merges with remote dev
Local refs configured for 'git push':
master  pushes to master   (up to date)
dev     pushes to dev (up to date)
						
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.

git remote 命令的输出信息更加详细。这两个查看分支的命令,大家可以根据各自喜好和习惯来选择使用。

删除远程 git 分支

在 git branch 命令后使用 -d(或者 -D 表示强制删除)选项可用于删除本地分支。

但是要删除远程仓库中的分支,使用 git branch 命令是不起作用的。要删除远程 git 分支,还需要使用 git push 命令,如下语法所示:

$ git push origin --delete dev
To github.com:liugl/proj.git
• [deleted]         dev $ git branch -a • master
dev
remotes/origin/HEAD -> origin/master
remotes/origin/master
						
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.

如上删除中,使用 git push 命令删除远程 git 分支后,并没有删除本地分支。

删除HEAD分支

HEAD 分支是默认分支的别名,在大多数存储库中,默认分支为 master 或者 main。

接下来我们尝试一下删除远程默认分支...

$ git branch -a • master
dev
remotes/origin/HEAD -> origin/master
remotes/origin/master
remotes/origin/dev $ git push origin --delete master
To github.com:liugl/proj.git
! [remote rejected] master (refusing to delete the current branch: refs/heads/master)
error: failed to push some refs to 'github.com:liugl/proj.git'
						
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.

如上所示,当我们尝试删除主分支的时候,抛出了一个错误,删除失败。也就是说,(一般情况下)主分支无法删除。

12年经验 · 提供上云保障

服务热线:132-6161-6125(手机) 400-150-1900(全国市话)

站内导航: 天翼云服务器价格| 天翼云购买流程| 天翼云代理| 北京天翼云代理商| 杭州天翼云代理| 深圳天翼云代理商| 钉钉代理商| 阿里云代理| 公司官网

我公司收款账号| 天翼云备案系统

CopyRight © 2019 天翼云代理商. All Rights Reserved 京ICP备11011846号-15 管理-北京志远天辰科技有限公司