删除远程分支的尝试失败 :
$ git branch -d remotes/origin/bugfix
error: branch 'remotes/origin/bugfix' not found.
$ git branch -d origin/bugfix
error: branch 'origin/bugfix' not found.
$ git branch -rd origin/bugfix
Deleted remote branch origin/bugfix (was 2a14ef7).
$ git push
Everything up-to-date
$ git pull
From github.com:gituser/gitproject
* [new branch] bugfix -> origin/bugfix
Already up-to-date.
我如何正确删除remotes/origin/bugfix
本地和远程分支?
删除分支的步骤 :
删除远程分支 :
git push origin --delete <your_branch>
删除地方分支,你已经三种方式:
1: git branch -D <branch_name>
2: git branch --delete --force <branch_name> # Same as -D
3: git branch --delete <branch_name> # Error on unmerge
解释:OK, 解释一下这里发生了什么!
简单做git push origin --delete
至删除您的远程分支仅仅,在结尾处添加分支的名称,这将删除和将它推到远程同时...
还有git branch -D
,它简单地删除了本地分支仅仅!...
-D
代表--delete --force
将会删除分支, 即使它没有合并( 强制删除) , 但是您也可以使用-d
代表--delete
将分支合并状态的错误丢弃为相应的错误...
我还创造了下方图像以显示步骤:

最初的几种方法对我行不通。
假设你有以下分支和远程分支,
Local : Test_Branch
Remote: remotes/origin/feature/Test_FE
正确设置上方为您本地分支以跟踪您想要删除的远程分支 。
git branch --set-upstream-to=remotes/origin/feature/Test_FE Test_Branch
然后删除远程分支执行此任务
git push origin --delete Test_Branch
然后删除本地分支,按照命令执行
git branch -D Test_Branch
就是这样。
很简单:
删除远程分支
git push -d origin <branch-name>
或
git push origin :<branch-name>
- 也可以用此语法删除标记
强制删除本地分支
git branch -D <branch-name>
注:do 做 agit fetch --all --prune
删除远程分支后, 在其它机器上删除已过时的跟踪分支 。
示例示例示例示例
要删除本地分支
git branch -D my-local-branch
要删除远程分支
git push origin :my-remote-branch
随着新版本的Git, 也有可能删除分支
git push origin --delete <branch_name>
TIP :如果您想要查看所有可用的分支, 您可以使用git branch -a
,
并且只看到边远的树枝, 你可以使用git branch -r
答案是好的, 但是, 如果您有一大堆分支, 逐个删除本地和远程的分支, 将会是一个无聊的任务 。 您可以使用此脚本将这些任务自动化 。
branch_not_delete=( "master" "develop" "our-branch-1" "our-branch-2")
for branch in `git branch -a | grep remotes | grep -v HEAD | grep -v master`; do
# Delete prefix remotes/origin/ from branch name
branch_name="$(awk '{gsub("remotes/origin/", "");print}' <<< $branch)"
if ! [[ " ${branch_not_delete[*]} " == *" $branch_name "* ]]; then
# Delete branch remotly and locally
git push origin :$branch_name
fi
done
- 列出您不想删除的分支
- 绕过遥控器的分支 如果它们不在我们的“保护名单”里 就会删除它们
资料来源:立即删除 Git 分支