Git分支上传的深入理解——从一个Git的无法上传远端的问题说起
一、问题:Git的无法上传远端
问题出现
后来经过咨询大佬,得出了解决思路
二、临时解决方法——应急使用Git Bash进行上传
首先,出现以上情况的朋友可以应急地使用Git Bash进行上传
上传操作也很简单
如果本地端和远端都只有一个分支,直接输入git push即可
如果有多个分支,就使用git push -u origin 分支名的方法
Notes:
git push // 只有一个分支时
git push -u origin 分支名
git push --set-upstream origin template
相当于 git push -u origin template
这个命令是用于将本地的分支推送到远程仓库,并将其设置为上游分支。
origin在这里是用来指定后面的仓库分支,也是上游/源头的意思,意味着将后面的本地仓库分支中的内容上传远端(源端)服务器。
三、remote的修正方法
为了通过remote的调试彻底解决问题,我先是将Http的请求方式更改成了SSH,如下图,但还是不解决问题。
我发现目前我的本地仓库和远程仓库中都只有一个template分支,所以我决定正好新建一个master分支,将template分支合并到master分支上,使命名更加规范,之后再删除template分支。
这样操作了一圈之后,再进行推送,仍然使用SSH作为URL(如上图),图形界面无法推送远端的问题就解决了。
四、相关问题
如果遇到这种删除不掉远程分支的情况,说明要删除的分支是远程仓库的默认分支,所以无法删除
这时,需要进入仓库的分支管理页面修改默认分支
点击分支右侧的切换按钮切换分支
切换分支后,可以把template分支删除,保留master分支
最开始问题就解决了,可以使用DevEco图形界面上传gitee。
五、总结
总结这个问题主要是为了说明几点
(1)临时技巧 (2)思想方法 (3)知识技能深化认识
- 说明了Git图形化界面无法使用时,有时可以临时用Git Bash操作界面救急。
- 有时侯直接解决问题无法实现时,不妨绕一圈,通过相关的方式执行一轮操作,将原先问题的名称改换一遍,之后再进行操作,问题可能就解决了。
- 深化了对合并分支的认识,知道了尽管git checkout master已经停留在master分支上了,但此时只能删除本地分支,远程分支可能无法删除。这种情况说明远程分支还是默认分支,要在远程网站的管理界面中进行修改。之后才可以删除远程分支。
转载自:https://juejin.cn/post/7375090667732942902