目录

删除本地分支

删除远程分支

如何删除所有非合并的Git分支?

删除所有不在远程上的本地分支

删除除Master以外的所有本地Git分支

结论


在本文中,您将在定义什么是Git分支以及删除分支的副作用之后,学习如何在Git中删除本地和远程分支。

如果您以前曾与Git一起工作过,以对Angular代码进行版本控制,那么您很有可能要删除一个或多个远程分支。开发人员经常发生这种情况,特别是在大型项目中。

在本文中,我们将学习:

  • 如何在您的Git存储库中删除本地分支
  • 如何在Git中删除远程分支
  • 如何删除所有已合并的Git分支
  • 如何删除所有不在远程上的本地分支
  • 如何删除除master以外的所有本地Git分支

在解决如何删除远程分支之前,我们将首先了解如何在本地Git存储库中删除分支。

注意:版本控制系统是现代Web开发中必不可少的工具,可以帮助您解决与每个任务相关的许多问题。Git是当今最受欢迎的版本控制系统之一。

在继续学习如何在Git中删除本地和远程分支之前,让我们定义什么是Git分支以及删除分支的副作用。

Git中的分支是指向提交的指针。如果删除分支,它将删除指向提交的指针。这意味着,如果删除尚未合并的分支,并且其他任何分支或标记都无法提交,则Git垃圾回收最终将删除不可达的提交。

删除本地分支

让我们开始学习如何删除本地分支。

  1. 首先,使用git branch -a命令显示所有分支(本地和远程)。
  2. 接下来,您可以使用以下git branch -d命令删除本地分支,然后是要删除的分支的名称。
$ git branch -a # *master # b1 # remote/origin/master # remote/origin/b1
$ git branch -d b1 # Deleted branch b1.

注意:也可以使用-D等效于--delete --force命令的标志代替-d。这将使您可以删除本地分支,而不考虑其合并状态。

删除远程分支

与本地分支不同,您不能使用git branch命令删除远程分支。但是,您需要使用git push --delete命令,后跟要删除的分支的名称。您还需要在git push之后指定remote名称(origin在这种情况下)。

$ git branch -a# *master
# b1
# remote/origin/master
# remote/origin/b1$ git push origin --delete b1
# [...]
# - [deleted] b1

如何删除所有非合并的Git分支?

既然我们已经了解了如何删除Git存储库中的本地和远程分支,那么假设您有多个Git分支。如何删除已经合并的分支?一次性的,而不是逐个删除它们。

注意:合并是使用git merge命令执行的,它只是意味着集成来自另一个分支的更改。

首先,您需要使用以下命令获取在远程存储库中合并的所有分支:

$ git branch --merged

如果您有一个合并分支,则可以使用以下命令简单地删除合并的本地分支:

$ git branch -d branch-name

如果要从远程存储库中删除它,请使用以下命令:

$ git push --delete origin branch-name

删除所有不在远程上的本地分支

您可以删除不在远程存储库上的所有本地分支,可以使用以下bash命令:

$ git branch -r | egrep -v -f /dev/fd/0  <(git branch -vv | grep origin) | xargs git branch -d

让我们打破这个命令:

  1. 首先,我们使用以下git branch -r 命令获取所有远程分支
  2. 接下来,使用以下egrep -v -f /dev/fd/0 <(git branch -vv | grep origin)命令获取不在远程上的本地分支
  3. 最后,我们使用以下xargs git branch -d命令删除分支

grep是一个命令行实用程序,用于在纯文本数据集中搜索与正则表达式匹配的行。它的名称来自ed命令g/re/p(全局搜索正则表达式并打印匹配的行),其作用相同。grep最初是为Unix操作系统开发的,但后来可用于所有类似Unix的系统以及某些其他操作系统,例如OS-9。

xargs(“eXtended ARGuments”的缩写)是Unix和大多数类似Unix的操作系统上的命令,用于从标准输入生成和执行命令。它将输入从标准输入转换为参数到命令。

删除除Master以外的所有本地Git分支

如果您已经完成了本地Git分支,通常最好删除它们以释放它们的空间。您可以简单地运行以下命令:

$ git branch | grep -v "master" | xargs git branch -D

我们使用grep -v "master"命令搜索除master以外的分支,然后使用git branch -D命令将其删除。

结论

在本文中,我们已经了解了如何从Git存储库中删除远程和本地分支。我们了解到:

  • 如何在您的Git存储库中删除本地分支
  • 如何在Git中删除远程分支
  • 如何删除所有已合并的Git分支
  • 如何删除所有不在远程上的本地分支
  • 如何删除除master以外的所有本地Git分支

如何删除本地/远程Git分支相关推荐

  1. 如何签出远程Git分支?

    有人用git push origin test将一个名为test的分支git push origin test送到共享存储库. 我可以看到git branch -r . 现在,我正在尝试签出远程tes ...

  2. 搭建 本地 远程git 仓库

    ubuntu 搭建本地 远程git 仓库 # 安装git sudo apt-get install git 可以通过创建一个专门的用户来管理 git 在服务器上搭建远端git仓库 创建一个目录, 作为 ...

  3. git 删除本地/远程分支

    1 删除本地分支 git branch -d 本地分支名A 注意:需要切换到其他分支下才能删除,处于分支A的时候,无法删除分支A 切换分支git checkout 本地分支名B 如果本地分支A下有未合 ...

  4. Git删除本地多个分支

    如果你本地有很多分支,需要批量删除本地分支:可以使用如下方法,如果大家觉得不错,请点赞支持一下. 要删除本地,首先要考虑以下三点 1.列出所有本地分支 2.搜索目标分支如:所有含有'dev'的分支 3 ...

  5. git 快速清理本地分支_Git删除本地多个分支

    由于本人是做QA的,经常需要发布很多分支,所以本地存留了很多的分支,需要批量删除本地分支:找到如下方法,有需要的人可以用到,多谢点赞. 要删除本地,首先要考虑以下三点 1.列出所有本地分支 2.搜索目 ...

  6. 如何创建远程 Git 分支?

    问: 我创建了一个本地分支.如何将其推送到远程服务器? 更新:我写了一个simpler answer for Git 2.0 here. 答1: 一个优秀的自由职业者,应该有对需求敏感和精准需求捕获的 ...

  7. 效率脚本:删除已经合并的git分支

    使用Git管理代码工程,着实方便了很多,但是当做完feature分支或者完成hotfix之后,总是忘记删除这些无用的分支,一个一个地删除着实麻烦,重复手工劳动不符合程序员的风格,于是写了一个简单的脚本 ...

  8. 如何删除本地和远程的 Git 分支

    文章目录 前言 一.删除本地分支 二.删除远程分支 三.注意点 总结 前言 我们利用git进行项目管理时,常常需要删除分支,分支分为本地分支和远程分支,本文主要介绍如何删除本地及远程分支. 一.删除本 ...

  9. git删除本地分支、删除远程分支 复制分支

    git删除本地分支.删除远程分支 It_BeeCoder 2019-05-15 09:47:20  80268  收藏 15 展开 https://blog.csdn.net/lihua5419/ar ...

最新文章

  1. C++之queue模板类
  2. openstack rootwrap详解
  3. 结构之美——优先队列基本结构(四)——二叉堆、d堆、左式堆
  4. bat批处理删除指定N天前的文件
  5. DL之MobileNetV2:MobileNetV2算法的架构详解(包括ReLu的意义)
  6. 什么时候使用mysql触发器_MySQL触发器的使用
  7. #{} 跟${}的区别
  8. 静态生成html的原理
  9. apache php设置404页面,详细介绍通过配置Apache实现404页面替换
  10. 738. 单调递增的数字
  11. Hidden (NOIP模拟赛)(字符串模拟QAQ)
  12. python雷达算法实现_基于Python的气象雷达工具包研究
  13. 搜索引擎网站收录入口大全
  14. 假如明天失业了,我该去哪里
  15. 不要去深圳小梅沙海洋世界
  16. 【Elasticsearch】Elasticsearch 报错 Values less than -1 bytes are not support
  17. 图片太大怎么缩小mb?
  18. 关于编程语言和编程工具
  19. GitHub 项目徽章的添加和设置
  20. 1.dom4j 解析xml

热门文章

  1. iphone图片编辑画笔_iPhone手机最好的图片编辑软件有哪些?
  2. 微信开源PhxQueue:高可用、高可靠、高性能的分布式队列**
  3. 结队项目——智能订餐系统用户调研报告
  4. python3 zlib 实现压缩与解压字符串与文件数据流
  5. Android Studio中arr包的引用
  6. GIT 报错:Branch ‘master‘ set up to track remote branch ‘master‘ from ‘origin‘
  7. Quartus II 13.1的下载和安装
  8. 为什么现在很多人特别排斥用微信打电话
  9. 实现条码枪的无焦点扫码
  10. Unity 语音识别以及音频可视化