当前位置:  开发笔记 > 开发工具 > 正文

Git pull origin <branch>会覆盖master吗?

如何解决《Gitpullorigin<branch>会覆盖master吗?》经验,为你挑选了1个好方法。

我在Github上有一个存储库,aav1

在我的笔记本电脑上,我有两个分支,一个名为master,一个名为vs12up .主分支是当软件是Visual Studio 2008时,vs12up转换为Visual Studio 2012.

在我的笔记本电脑上一切似乎都很好,我把新分支推到github,看起来是正确的.

在我的桌面上,我试图拉远程分支:

git pull origin vs12up

它在桌面上将更改写入我的主分支,git log显示在vs12up分支上进行的提交,但git分支仅显示master,这是当前分支.

如何将更改还原到分支并拉出桌面上的vs12up分支以匹配笔记本电脑上的存储库?



1> earl..:

如果git pull使用远程分支名称执行操作,它将获取远程分支,然后将其合并到当前本地分支中.因此,要撤消该操作,首先必须将本地分支重置为远程master,然后vs12up从相应的远程分支创建新的本地分支.

    重置本地master以匹配远程存储库master(警告:在发出以下命令之前,请确保您没有要保留的任何未提交的更改):

    git reset --hard origin/master
    

    将所有远程分支获取到本地存储库:

    git fetch origin
    

    vsup12从远程vsup12分支创建一个新的本地分支,并切换到这个新的本地分支:

    git checkout -b vsup12 origin/vsup12
    

请注意,当您稍后git pull切换到vsup12分支时,您将从vsup12Github上的分支获取并合并最新更改到您的本地vsup12


`-b`指定新分支的名称.`git checkout -b foo`是创建一个名为`foo`的分支(带有`git branch foo`)然后切换到它(使用`git checkout foo`)的简写.
推荐阅读
N个小灰流_701
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有