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

时间:2020-01-09 10:34:22  来源:igfitidea点击:

说明

根据分支策略,完成分支后,通常几乎不需要保留它。本教程将向我们展示如何从本地Git存储库中删除旧的未使用的分支。

当使用gitflow分支策略时,会为每个功能创建一个功能分支,并为错误修复等创建一个错误修复分支。这些分支的寿命通常很短,尤其是在执行敏捷或者XP编程的环境中。

保持存储库井然有序,确保其他开发人员能够浏览代码存储库。用过时的分支乱丢存储库可能使其他人难以跟随项目,甚至难以招募其他开发人员。

删除本地Git分支

要删除本地Git分支,请在branch命令中使用-d或者delete标志。另外,它一定不能是活动分支。如果是,则需要先签出其他分支。

例如,要删除名为Feature / my-new-feature的本地分支,我们将使用运行以下命令。

git branch -d feature/my-new-feature

或者,使用删除标志

git branch --delete feature/my-new-feature

两个删除标志都执行相同的操作,因此没有区别。当我们想清楚地了解正在执行的操作时,使用delete标志而不是-d标志是有意义的。

Git删除分支如果没有合并

为了删除尚未合并到主分支中的本地分支,请使用-D标志而不是-d或者--delete。

git branch -D feature/my-new-feature

强制Git删除分支

要强制删除我们以前在本地存储库中的Git分支。 -f或者--force标志。

git branch -d -f feature/my-new-feature

删除远程分支

在具有多个开发人员在同一个功能分支上工作的团队项目中,很有可能将功能分支推送到远程存储库。

-d和delete标志只会删除分支的本地副本。为了删除远程副本,我们将使用其他方法。仍将使用delete标志,但是我们将其与push命令一起使用,并且将回购名称与分支名称作为目标。

git push --delete origin feature/my-new-feature

强制Git删除远程分支

要强制删除远程分支,请使用-f或者--force标志。

git push --delete -f origin feature/my-new-feature

删除本地和远程Git分支

如果要删除分支的一个副本,则可能还需要删除另一个。以下序列应用于删除本地和远程分支。

git push --delete origin feature/my-new-feature
git branch --delete feature/my-new-feature