首页 > 其他分享 >Git 删除分支——如何删除本地或远程分支

Git 删除分支——如何删除本地或远程分支

时间:2024-03-30 13:04:27浏览次数:17  
标签:Git branch 删除 本地 远程 分支

Git 删除分支——如何删除本地或远程分支

Git 是一种流行的版本控制系统,也是 Web 开发人员工具包中必不可少的工具。分支是使用 Git 的一个强大且不可或缺的部分。在本文中,您将学习有关如何在 Git 中删除本地和远程分支的基础知识。

Git 中的分支是什么?

分支是指向提交的指针。

Git 分支是从特定时间点开始的项目及其更改的快照。

在处理大型项目时,有包含所有代码的主存储库,通常称为main或master。

分支允许您创建原始主要工作项目的新的、独立的版本。您可以创建一个分支来编辑它以进行更改、添加新功能或在尝试修复错误时编写测试。一个新的分支可以让你在不以任何方式影响主代码的情况下做到这一点。

总而言之 - 分支让您可以在不影响核心代码的情况下更改代码库,直到您完全准备好实施这些更改。

这有助于您保持代码库整洁有序。

为什么要删除 Git 中的分支?

因此,您已经创建了一个分支来保存要在项目中进行的更改的代码。

然后,您将该更改或新功能合并到项目的原始版本中。

这意味着您不再需要保留和使用该分支,因此删除它是一种常见的最佳做法,以免它弄乱您的代码。

如何在 Git 中删除本地分支

本地分支是您本地机器上的分支,不会影响任何远程分支。

在 Git 中删除本地分支的命令是:

git branch -d  local_branch_name
  • git branch 是在本地删除分支的命令。
  • -d是一个标志,是命令的一个选项,它是--delete. 顾名思义,它表示您要删除某些内容。-local_branch_name是要删除的分支的名称。

让我们通过一个例子来更详细地研究一下。

要列出所有本地分支,请使用以下命令:

git branch

我有两个,分支master和test2. 如图所示,我目前在test2分支上(*):

Screenshot-2021-08-25-at-4.13.14-PM

我想删除test2分支,但无法删除您当前所在和查看的分支。

如果您尝试这样做,您将收到如下所示的错误:

Screenshot-2021-08-25-at-4.17.50-PM

因此,在删除本地分支之前,请确保使用以下git checkout命令切换到您不想删除的另一个分支:

git checkout branch_name

#where branch_name is the name of the branch you want to move to
#in my case the other branch I have is master, so I'd do:
#git checkout master

这是输出:

Screenshot-2021-08-25-at-4.20.40-PM

现在我可以删除分支:

Screenshot-2021-08-25-at-5.10.13-PM

我们刚刚使用的删除本地分支的命令并非在所有情况下都有效。

如果分支包含未合并的更改和未推送的提交,则该-d标志将不允许删除本地分支。

这是因为任何其他分支都看不到提交,并且 Git 正在保护您免于意外丢失任何提交数据。

如果你尝试这样做,Git 会显示一个错误:

Screenshot-2021-08-25-at-5.23.46-P​​M

正如错误所暗示的那样,您需要改用该-D标志:

git branch -D local_branch_name

-D带有大写-- delete --force字母D(它是 的别名)的标志会强行删除本地分支,无论其合并状态如何。

但请注意,您应该谨慎使用此命令,因为没有提示要求您确认您的操作。

仅当您绝对确定要删除本地分支时才使用它。

如果您没有将其合并到另一个本地分支或将其推送到代码库中的远程分支,您将面临丢失所做的任何更改的风险。

Screenshot-2021-08-25-at-5.33.41-PM

如何在 Git 中删除远程分支

远程分支与本地分支是分开的。

它们是托管在远程服务器上的存储库,可以在那里访问。这与本地分支相比,本地分支是本地系统上的存储库。

删除远程分支的命令是:

git push remote_name -d remote_branch_name
  • git branch您可以使用该命令删除远程分支,而不是使用用于本地分支的git push命令。
  • 然后您指定遥控器的名称,在大多数情况下是origin.
  • -d是删除标志,是--delete.
  • remote_branch_name 是要删除的远程分支。

现在,让我们看一个如何删除远程分支的示例。

要查看任何远程分支,请使用以下命令:

git branch -a

该-a标志(一个别名--all)显示所有分支机构-本地和远程。

Screenshot-2021-08-25-at-7.35.31-PM

我有两个名为masterand 的本地分支test和两个远程分支origin/masterand origin/test。

的-r,一个别名--remotes,显示仅在远程存储库。

Screenshot-2021-08-25-at-7.37.12-PM

我想删除远程origin/test分支,所以我使用命令:

git push origin -d test

输出:

Screenshot-2021-08-25-at-7.39.34-PM

这删除了test名为 的远程存储库中的分支origin。

该origin/test远程仓库就不再出现了:

Screenshot-2021-08-25-at-7.42.01-PM

结论

您现在知道如何在 Git 中删除本地和远程分支。感谢阅读,祝学习愉快!

标签:Git,branch,删除,本地,远程,分支
From: https://blog.csdn.net/m0_69824302/article/details/137170659

相关文章

  • LeetCode Python - 80. 删除有序数组中的重复项 II
    目录题目描述解法运行结果题目描述给你一个有序数组nums,请你原地删除重复出现的元素,使得出现次数超过两次的元素只出现两次,返回删除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用O(1)额外空间的条件下完成。说明:为什么返回......
  • [GIT] Git Tag
    0序不常用、但又比较重要的GIT命令,简单memo下。1GitTag常用操作在本地仓库打标签gittag-aV3.0.1-Release-m"Taggingversion3.0.1-Release"推送标签至远程仓库gitpushorigin标签名删除本地仓库标签gittag-dV3.0.1-Release删除远程仓库......
  • Git学习记录(一):安装与配置
    Git安装:Linux系统自带:终端中输入git即可Windows系统安装:git下载:https://git-scm.com/download/win将git添加至环境变量git--version查看git版本Git配置:gitconfig--global--list 用于查看git配置信息,主要包括邮箱email和姓名namePSC:\Users\qiyh>gitconfi......
  • openGauss 备机增加删除
    备机增加删除可获得性本特性自openGauss2.0.0版本开始引入。特性简介支持新增和删除备节点。客户价值当主库的读取压力较大,或者用户想要提升数据库灾难恢复能力,需要新增备节点。当集群中的某些备节点发生故障无法短时间内进行修复时,为保证集群状态正常,用户可以先将故障节点......
  • Gitea的简单介绍
    Gitea是一个由社区驱动的轻量级代码托管解决方案,它为开发者和团队提供了一个易于使用且高效的平台来托管和分享他们的代码。在这篇博客中,我们将对Gitea进行一个简单的介绍,探讨它的特点、优势以及如何为开源项目和私有项目提供支持。什么是Gitea?Gitea是一个用Go语言编写的开源......
  • 003 git的日常操作-新建分支
    新建分支一、本地仓库与远程仓库都无此分支创建本地分支dev并将其关联到远程仓库的origin/dev分支。步骤:检查当前所在分支,确保不在dev分支上:gitbranch如果不在dev分支上,切换到master或其他主分支-取决于你想让该分支拥有那个分支的数据:gitcheckoutmaster......
  • 代码随想录第22天 | 235. 二叉搜索树的最近公共祖先 701.二叉搜索树中的插入操作 450.
    235. 二叉搜索树的最近公共祖先 235.二叉搜索树的最近公共祖先-力扣(LeetCode)代码随想录(programmercarl.com)二叉搜索树找祖先就有点不一样了!|235.二叉搜索树的最近公共祖先_哔哩哔哩_bilibili给定一个二叉搜索树,找到该树中两个指定节点的最近公共祖先。百度百......
  • 002 git日常操作-新建项目
    场景1:新建项目1.gitclone是用于从远程仓库克隆项目到本地的命令。最佳实践:选择合适的远程仓库URL:使用HTTPS或SSHURL克隆仓库,取决于你的访问权限和认证方式。SSHURL需要设置SSHkey。克隆到合适的目录:在克隆之前,选择一个合适的本地目录作为克隆仓库的存放位置......
  • congregate迁移gitlab数据
    项目地址:https://gitlab.com/gitlab-org/professional-services-automation/tools/migration/congregate/congregate是一款gitlab官方推出的数据迁移工具,可以方便的把其他SCM系统的项目迁移到gitlab实例本次测试主要是源gitlab实例迁移到目标gitlab实例。安装congrega......
  • 基本运算符及流程控制语句(顺序、分支、循环结构)
    昨日内容回顾【一】八大基本数据类型#【1】数字类型#(1)整数类型(int)#(2)浮点数类型(float)#【2】字符串类型(str)#【3】列表类型(list)#【4】布尔类型(bool)#【5】字典类型(dict)#【6】集合类型(set)#【7】元组类型(tuple\)#【二】整数类型#能代表整数,代表......