我的代码运行良好,并创建了一个分支来在我的工作计算机上使用git checkout -b messaging
. 我提交了我部分完成的工作并将其推送到我的远程存储库git push origin messaging
。现在我回家了,我做了一个git pull origin messaging
并且在那个分支上,但是我想切换回 master,但是git checkout master
给了我以下消息:
$ git checkout master
Switched to branch 'master'
Your branch is ahead of 'origin/master' by 1 commit.
我修改messaging
分支的所有文件都在那里。 git status
通知我我在 branch 上master
,但我的 branch 提前origin/master
了 1 个提交。我发现我可以通过两种方式找到我真正的主人:
git checkout origin/master
git checkout master~1
但是我对为什么会发生这种情况感到困惑,我想确保我的更改master
不会影响messaging
分支,反之亦然。我想做的就是把origin/master
我的本地化master
,并保留messaging
在其单独的分支中。我是否做错了什么来master
指出messaging
我家用计算机上的提交?此时我想要两个完全隔离的分支。
再想一想,当我git pull origin messaging
在我的master
分支上时,那实际上是否将messaging
分支合并到我的本地master
?如果是这样,我应该做什么(创建本地messaging
分支并拉入其中?)以及如何在不进行更改的情况下将我的本地指向master
提交messaging
?