Git分支本地删除失败 删除git本地和远程分支的失败总是失败,总是提示not found 是怎么回事,原因大概是因为删除分支没有删除干净所导致或者使用命令不正确所致
1、Git分支本地删除失败 的问题描述
Git分支本地删除失败 失败时报的错,使用的是下边的命令总是报错not fund,
$ 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.
2、正确删除分支的步骤
2.1、删除远程分支:
$ git push origin --delete <your_branch>
2.2、删除本地分支
有以下三种方式
第一种
$ git branch -D <branch_name>
第二种
$ git branch --delete --force <branch_name> # 同上
第三种
$ git branch --delete <branch_name> # 未合并会报错
2.3、解释一下这些操作到的作用
执行 git push origin --delete
即可删除远程分支;在末尾添加分支的名称,这将同时删除并将其推送到远程。。。
执行 git branch -D
它只删除本地分支! -D代表 –delete –force,它将删除未合并的分支(强制删除);你也可以使用 – d 代表 –delete,如果未合并代码会报代码合并错误
代码合并时的过程图
三、提示
1、如果你在要删除的分支上进行设置,则需要在删除本地分支之前检出你需要删除的分支以外的分支(例如:master)
2、当origin分支被删除时,你的本地存储库不会注意到这一点。你仍将拥有这些分支的本地缓存版本,但 git branch -a 仍会将它们列为远程分支。可以像这样在本地清理该信息: git remote prune origin
这样就不会删除已删除分支的本地副本。git fetch --prune
也可以实现相同的效果
3、在删除远程分支后在其他机器上执行一个git fetch --all --prune
操作,以删除过时的跟踪分支。
4、如果您想查看可以使用的所有可用分支可以使用git branch -a
5、只想查看远程分支,您可以使用git branch -r