2014-01-23 124 views
0

匹配远程当我运行git branch -a我得到这个:删除远程分支和重置本地回购使用GIT

master 
    origin 
    remote 
    upstream 
    web_search 
    remotes/origin/HEAD -> origin/master 
    remotes/origin/ba 
    remotes/origin/insur 
    remotes/origin/master 
    remotes/origin/mv 
    remotes/origin/redesign 
    remotes/origin/soap 
    remotes/origin/web_search 
    remotes/upstream/ba 
    remotes/upstream/face 
    remotes/upstream/facebook 
    remotes/upstream/feature/web 
    remotes/upstream/insurance 
    remotes/upstream/master 
    remotes/upstream/mv 
    remotes/upstream/redesign 
    remotes/upstream/refactor 
    remotes/upstream/soap 

remotes/origin是,我想停止跟踪分叉的存储库。我想重置所有内容,以便我只看到跟踪的分支remote/upstream。我甚至想摆脱remotes/upstream片在我的树枝面前,所以我只看到masterbranch2

如何重置一切只跟踪上游分支机构,并让他们成为“默认“?

回答

1

首先,你不需要把它们称为remote/upstream - 你可以在git的任何地方命名该upstream,你会没事的。

这些在git术语中称为遥控器,并且代表您自己的回购所知道的存储库。如果您想停止跟踪该origin远程,则可以运行git remote rm origin。有关遥控器的更多信息,请参阅git help remote

masterupstream/master之间的区别实在是必要的,因为Git有知道你指的是你自己的本地分支(master),或分支副本,你从远程(upstream/master)牵强。你可以在任何时候想要在其中一个远程分支上工作,你可以做的是git checkout remote/branch(如git checkout upstream/soap),git将创建一个新的本地分支,称为远程分支(在这种情况下为soap),并将其设置为跟踪远程一。跟踪使您能够运行git push并让git知道它必须将soap分支更新推送到soap分支的upstream远程存储库中。

+0

有道理,谢谢你的提示。 – Luigi