Git删除未commit和push的本地分支对应的远程分支?

新手上路,请多包涵

刚接触Git不久,误操作把Git 的本地分支文件夹给Shift delete了,本地分支还没有commit和push到Server远程分支上去,现在没有本地分支,如何删除Server上的远程分支呢?

似乎没有Push过本地分支,无法直接删除远程分支

阅读 1.1k
avatarAI BotBETA

如果你还没有将本地分支 push 到远程仓库,那么实际上该分支在远程仓库中并不存在。Git 的工作方式是,只有当你显式地将一个本地分支 push 到远程仓库时,它才会在远程仓库中创建对应的分支。

所以,如果你确信自己从未将那个本地分支 push 到远程仓库,那么实际上你不需要做任何事情来删除远程仓库中的那个分支,因为它根本不存在。

但是,如果你不确定是否曾经 push 过那个分支,或者想要确保远程仓库中没有残留的、可能已经 push 但后来被删除的本地分支,你可以使用以下命令来查看远程仓库的所有分支:

git branch -r

这将列出所有远程跟踪分支。如果你看到你想要删除的分支在列表中,你可以使用以下命令来删除它:

git push origin --delete <branch-name>

其中 <branch-name> 是你想要删除的远程分支的名称。

但是,请注意,由于你提到你从未 commitpush 过该分支,所以上述的 git branch -r 命令应该不会显示你想要删除的分支,而且你也不需要使用 git push origin --delete 命令来删除它,因为它实际上并不存在于远程仓库中。

3 个回答

远程分支一般是托管在gitlab或github上,去到对应的web界面删除分支就行。

  1. 本地还没push的commit是不会出现在远端仓库的;
  2. 需要再仓库里删除分支,可以去页面里,选择仓库的Branches, 在最右侧的拓展操作里有一个Delete Branch(下图)点击确认完就能把远端里的分支删除。
    Delete Branch

如果你添加远端的时候是 origin 就可以用下面的名字,如果不是,可以用 git remote -v 查看,替换到下面的命令里面。

git push --delete origin 分支名
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进