git remote add origin git@git.xxx.xxx:xxxx/xxx/jmeter-load-testing-test.git
把gitlab上我建的仓库关联为我的远程仓库
![](https://img-blog.csdnimg.cn/b1a328e840bc4548ad3416faf747e739.png)
失败了,报错远程仓库已存在,用git remote -v命令查一下:
![](https://img-blog.csdnimg.cn/60b444173032421bb09db2bb16a5de8e.png)
可以看到确实已经关联了别的远程仓库,需要解绑再关联一下
git remote rm origin //删除关联的origin的远程库
git remote add origin git@git.xxx.xxx:xxxx/xxx/xxx.git //再次关联远程仓库
解绑成功和添加远程仓库成功后,均无提示也无报错,用git remote -v命令查看一下,已经有远程仓库的信息了
接下来,git push -u origin main
注:我的本地和远程分支都是main
![](https://img-blog.csdnimg.cn/89e749e503e147f29957967e45a05db0.png)
报错了,
出现原因是因为在你上传的时候,远程仓库中有着本地仓库没有的文件,导致本地仓库和远程有不同的开始点,也就是两个仓库没有共同的 commit 出现的无法提交。
解决方法是先把远程仓库的提交pull下来,合并到本地后再次push到远程
git pull origin main
![](https://img-blog.csdnimg.cn/0cb9beb81ea54c21b4507388697bf9f2.png)
还是报错了,因为拒绝合并不相关的历史。
有两种方法解决:
1.修改pull命令为:
git pull origin main
--allow-unrelated-histories
这个命令可以合并两个独立启动的仓库的历史
![](https://img-blog.csdnimg.cn/0d3a4344a50f411fb0631ab7f2d10b42.png)
2.git pulsh origin main -f
强行让本地分支覆盖远程分支,远程分支上的提交都会丢失,慎用!
现在再输入git push -u origin main
![](https://img-blog.csdnimg.cn/0fb5a4c8400a4cb3aae414e186b7fb71.png)
我们第一次推送本地
分支时,加上了
-u
参数,Git不但会把本地的
分支内容推送的远程
分支,还会把本地的
分支和远程的
分支关联起来,在以后的推送或者拉取时就可以简化命令。