公司一直用的Git,为了尽快熟悉Git的使用,我登录了自己的GitLab账号新建了一个项目,却发现本地的代码一直提交不上去,显示Push rejected的问题,原因是我没有将本地分支和远程分支建立关联,从网上找了好多方案才解决,特此记录下。
第一步:注册并登录账号,没啥说的
第二步:点击new project按钮
第三步:填写项目名称并创建项目
Project name:项目的名称。
Project description:项目的描述(可以不填)。
Visibility Level(项目可见级别):提供Private(私有的,只有你自己或者组内的成员能访问)/Internal(所有登录的用户)/Public(公开的,所有人都可以访问)三种选择,个人搭建项目建议private。第四步:创建密钥:在自己的user路径下进入.ssh文件夹(没有的话就手动创建),右键选中Git Bash Here
并配置全局账户名和全局邮箱,比如:
git config --global user.name “testUser”
git config --global user.email “testUser@163.com”
第五步:生成公钥,一直按回车键就可以了
此时你的.ssh文件下就会生成两个文件
第六步:将id_rsa_publ里的内容复制出来并粘贴到SSH Keys里面,点击Add key就OK了。
第七步:打开你的本地项目,添加Git仓库
第八步:右键add项目并且提交到本地仓库
如果你现在直接push到远程仓库的话是会报错的
此时你用git push -f
命令就知道是本地分支与远程分支没关联起来的问题:
解决办法就是 : git push --set-upstream origin master
。其中的origin是你在clone远程代码时,git为你创建的指向这个远程代码库的标签,它指向repository , master是你远程的branch。
如果不清楚分支的话可以用:git branch -a
查看所有分支,远程分支是红色的部分,再将对应的master值替换掉就可以了(远程也是master分支,所以不做修改)
上面划线的部分是我关联分支时报的错误,查了一下是因为gitlab中的README.md文件不在本地代码目录中,解决办法: git pull --rebase origin master
再提交项目,大功告成。
码图不易~