删除分支后如何在Git中重新分支

时间:2018-08-04 05:39:58

标签: git github

我将original_repo分叉到my_repo,它有两个分支origin/masterorigin/dev。我将my_repo克隆到PC上,并添加了original_repo作为远程上游。我在本地dev上工作并提交了它,并将其推送到my_repo。然后提交了PR,当它被接受时,Git建议我删除分支dev。我这样做了,my_repo不再有dev分支。在PC上,我使用dev命令删除了git branch -d dev

  1. 但是为什么它在此命令中仍显示dev分支?这不像跟踪吗,但是由于dev中的my_repo已经不在了,为什么他们还在这里?

    c:\> git branch -a
    * master
      remotes/origin/HEAD -> origin/master
      remotes/origin/dev
      remotes/origin/master
      remotes/upstream/dev
      remotes/upstream/master
    
  2. 在删除dev分支后,它按预期从my_repo中消失了,但是由于要处理另一个错误,如何从original_repo中再次派生它?我觉得我可以删除my_repo和本地PC克隆并再次分叉original_repo。还是有一种标准的方法?

2 个答案:

答案 0 :(得分:1)

在本地删除不会删除您的远程副本。您需要删除本地和远程分支。 要删除远程分支,您需要运行

  

git push origin --delete dev

这使得删除远程分支。

向该博客发送消息以了解更多信息

How can I delete branches in Git

答案 1 :(得分:1)

当您删除上游存储库中的分支时,它不会删除本地存储库中的跟踪分支。当您删除具有相同名称的本地分支时,它 still 不会删除远程仓库的跟踪分支。

最简单的“清理”方法是使用git fetch -p(或--prune),它将为已删除的远程分支清理(并删除)本地跟踪分支。