前情
本地有两个分支,main
主分支和articles
分支,且articles
分支并未推送到我的远程仓库中
惨剧过程
头天晚上写完代码后,怕晚上脑子不清楚搞错什么功能,中午检查了一遍代码,觉得功能做差不多了
然后准备提交推送远程,反手直接进行commit
提交,然后push
推送到远程
我一刷新远程仓库发现并没有更新,而且多了一个articles
分支,这才反应过来,忘记了自己还在articles
分支上,是直接从本地分支往远程仓库里推的(阿哲…😅)
解决过程
这里一开始忘记截图了,描述一下:
刷新 github
后会看到一个黄色提示条,提示你这里有一个分支需要合并(搂了一眼,大概是这个意思)
然后直接点击那个黄色提示框的绿色按钮
pull request
,然后会跳转这个页面(我理解的如果没有冲突,就会提示你可以合并)
下滑点击那个绿色的create pull request
然后你会发现你仓库的Pull request
这个地方出现一个灰色小圈并有一个1
,意思就是这个仓库有一个未处理的/开放的拉取请求
点击进去你会看到这个页面,然后点击允许合并就可以了(图里我已经点过了)
回到仓库,发现已经完成合并了!
删除分支
点击图中带紫色部分的那个
Delete branch
按钮删除这个多余的分支即可。
也可以在git
上删除这个远程分支git push origin :article
(辅助理解:向远程origin推一个不存在的分支到远程article),然后删除本地分支git branch -d 分支名
但是!!!
等你到本地切换到main
主分支,发现代码还是修改之前的样子,别急,从远程仓库拉取一下git pull
,然而你又发现:
什么?连接被重置了?
那就使用一下这个命令
git pull origin main
,意思就是重新建立一个连接
再看本地工作区,代码已经同步了
总结
下次推送前一定要记得看自己在不在主分支!!!!!!!!