git - 当我在主分支上时从不同的分支拉出会发生什么
问题描述
1)在本地postacl
仓库中,我通过运行创建并切换到一个分支git checkout -b postacl
2)然后我跑了git push -u origin postacl
3)从远程仓库,当我还在那里的master
分支上时,我不小心跑了git pull origin postacl
。然后我意识到我没有切换到postacl
.
上述行为发生了什么?
解决方案
master
在一般情况下,您很可能只是在本地分支之上添加了一个合并提交。git log
您可以通过从您的master
分支运行来验证这一点。您可能会看到一个新的合并提交,其中有一条提交消息提到了有关合并的内容。如果你没有看到任何合并提交,那么你不需要做任何事情。如果您确实看到了,请继续阅读。
在这种特殊情况下,您应该安全地进行硬重置以删除合并提交:
git reset --hard HEAD~1
这应该会消除意外的合并提交,让您的本地保持master
原样。您也可以尝试将本地重置master
为跟踪分支:
git reset --hard origin/master
推荐阅读
- ios - 设置 searchcontroller 时显示/隐藏导航栏
- javascript - 在js中上传和下载按钮一个待办事项列表(如文本文件)
- javascript - 获取 URL 参数并传递给 Wordpress 中的表单选择
- flutter - 在颤动中自定义卡片底栏
- javascript - 如何从Vue中的json数组绑定url图像src
- algorithm - 您如何在多动态调度系统中找到该方法,它是如何在后台实现的?
- python - 遍历 Web 元素列表并一次单击一个元素
- c++ - 如何访问作为指针参数指针传递给函数的结构成员?
- gps - Mikrotik GPS 数据共享
- python-3.x - 使用python进行星星颜色检测