Git pull origin<;分行>;覆盖主机?
我在Github上有一个存储库,aav1 在我的笔记本电脑上,我有两个分支,一个叫做master,另一个叫做vs12up 主分支是当软件是Visual Studio 2008时,vs12up转换为Visual Studio 2012 在我的笔记本电脑上,一切似乎都很好,我将新的分支推到github上,看起来是正确的 在我的桌面上,我尝试拉远程分支:Git pull origin<;分行>;覆盖主机?,git,github,git-branch,remote-branch,Git,Github,Git Branch,Remote Branch,我在Github上有一个存储库,aav1 在我的笔记本电脑上,我有两个分支,一个叫做master,另一个叫做vs12up 主分支是当软件是Visual Studio 2008时,vs12up转换为Visual Studio 2012 在我的笔记本电脑上,一切似乎都很好,我将新的分支推到github上,看起来是正确的 在我的桌面上,我尝试拉远程分支: git pull origin vs12up 它在桌面上写入了对我的主分支的更改,git log显示在vs12up分支上所做的提交,但git分支只
git pull origin vs12up
它在桌面上写入了对我的主分支的更改,git log显示在vs12up分支上所做的提交,但git分支只显示master,即当前分支
如何将更改还原到主分支并在我的桌面上拉取vs12up分支以匹配我笔记本电脑上的存储库?如果使用远程分支名称执行
git拉取
,它将获取远程分支,然后将其合并到当前本地分支。因此,要撤消该操作,您必须首先将本地分支重置为远程主机
,然后从相应的远程分支创建新的本地vs12up
分支
master
以匹配远程存储库的master
(警告:在发出以下命令之前,确保没有任何要保留的未提交更改):
git fetch origin
vsup12
分支创建一个新的本地vsup12
分支,并切换到此新的本地分支:
git checkout -b vsup12 origin/vsup12
请注意,当您随后在切换到
vsup12
分支的同时执行git pull
时,您将从Github上的vsup12
分支获取最新更改并将其合并到本地vsup12谢谢。两个问题,-b参数做什么?我是否通过git checkout master切换回来?-b
指定新分支的名称git checkout-bfoo
是创建一个名为foo
(使用git branch foo
)的分支,然后切换到它(使用git checkout foo
)的简写。在桌面上,在我按照上面的说明操作后,git状态返回#您的分支比'aav1/vs12up'早1次提交。-但它说一切都是最新的,没有什么可承诺的。这正常吗?假设您的远程设备确实被称为aav1
,而不是origin
,这将表明您在本地有一个新的提交,而该提交尚未在远程存储库中。当做上述事情时,这是不正常的。也许你无意中在两者之间拉/合并了?但我担心这不是一个单独的问题,也不是你的问题。
git checkout -b vsup12 origin/vsup12