Git 删除分支——如何删除本地或远程分支
创始人
2024-12-08 13:35:17
0

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 中删除本地和远程分支。感谢阅读,祝学习愉快!

相关内容

热门资讯

详细辅助!哈糖大菠萝可以开挂吗... 详细辅助!哈糖大菠萝可以开挂吗,广东闲来掌上程序辅助软件,开挂(透视)辅助插件(有挂细节);广东闲来...
科技辅助!智星德州有脚本吗,微... 科技辅助!智星德州有脚本吗,微乐陕西小程序破解器,开挂(透视)辅助软件(揭秘有挂);大家肯定在之前微...
传授开挂!wepoker私人局... 传授开挂!wepoker私人局俱乐部,微信小程序辅助器出租,开挂(透视)辅助工具(证实有挂);1、超...
正品开挂!hhpoker有辅助... 正品开挂!hhpoker有辅助的吗,蜀山四川vip破解,开挂(透视)辅助神器(有挂功能);蜀山四川v...
发现开挂!we-poker有人... 发现开挂!we-poker有人玩吗,财神13辅助包最新版本更新内容详解,开挂(透视)辅助安装(有挂神...
通报辅助!pokemmo修改器... 通报辅助!pokemmo修改器手机版,传送屋app辅助,开挂(透视)辅助脚本(有挂功能);小薇(透视...
盘点辅助!werplan透视挂... 盘点辅助!werplan透视挂,开心泉州小程序辅助器安全吗,开挂(透视)辅助软件(竟然有挂);超受欢...
原来有开挂!wepoker辅助... 【福星临门,好运相随】;原来有开挂!wepoker辅助器有哪些功能,微信小程序辅助软件有哪些,开挂(...
通报辅助!hhpoker透视脚... 通报辅助!hhpoker透视脚本下载,微信小程序财神十三脚本app,开挂(透视)辅助脚本(有挂辅助)...
细节辅助!hh poker辅助... 细节辅助!hh poker辅助器先试用,牵手游戏辅助,开挂(透视)辅助下载(有挂技巧);牵手游戏辅助...