【发布时间】:2011-01-01 11:44:43
【问题描述】:
我想在本地和远程删除一个分支。
尝试删除远程分支失败
$ 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 分支,我应该做些什么不同的事情?
【问题讨论】:
-
版主说明:如果您打算回答这个问题,请注意已经发布了 40 个答案。您的新答案会增加任何实质性价值吗?
-
注意:对于 Git 2.5+(2015 年第二季度),确切的消息将是“
deleted remote-tracking branch”:请参阅 github.com/git/git/commit/… -
跳过前几个答案,直接跳到最好的答案:stackoverflow.com/a/23961231/4561887。要删除一个 git 分支,实际上有 3 个不同的分支要删除! 这个答案清楚地说明了这一事实。
-
@GabrielStaples 没有上下文,您的评论令人困惑。 “最佳”评分的答案是否有错误?
-
@Nathan,不,他们没有错,但他们不会教你不知道你不知道的东西 ,而我链接到的那个使这个关键的 unknown unknown 变成 known unknown 然后是 known known。在我阅读该答案之前,我不知道您有 1) 本地分支、2) 本地存储的远程跟踪分支和 3) 远程分支。在此之前,我认为只有一个本地分支和远程分支。本地存储的远程跟踪分支是一个unknown unknown。让它从那个变成一个已知的才是最好的答案。
标签: git version-control git-branch git-push git-remote