Git学习(二)

文章讲述了在Git使用过程中遇到的远程仓库已存在、如何解绑并重新关联以及推送冲突的解决方法。当本地和远程仓库有不同历史记录时,可以通过`--allow-unrelated-histories`参数进行合并,或者使用`-f`强制推送,但后者会丢失远程分支的提交。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

git remote add origin git@git.xxx.xxx:xxxx/xxx/jmeter-load-testing-test.git   
把gitlab上我建的仓库关联为我的远程仓库
失败了,报错远程仓库已存在,用git remote -v命令查一下:
可以看到确实已经关联了别的远程仓库,需要解绑再关联一下
 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

 

报错了, 出现原因是因为在你上传的时候,远程仓库中有着本地仓库没有的文件,导致本地仓库和远程有不同的开始点,也就是两个仓库没有共同的 commit 出现的无法提交。
解决方法是先把远程仓库的提交pull下来,合并到本地后再次push到远程
git pull origin main

 

还是报错了,因为拒绝合并不相关的历史。
有两种方法解决:
1.修改pull命令为:
git pull origin main --allow-unrelated-histories
这个命令可以合并两个独立启动的仓库的历史

 

2.git pulsh origin main -f 
强行让本地分支覆盖远程分支,远程分支上的提交都会丢失,慎用!
现在再输入git push -u origin main

 

我们第一次推送本地分支时,加上了-u参数,Git不但会把本地的分支内容推送的远程分支,还会把本地的分支和远程的分支关联起来,在以后的推送或者拉取时就可以简化命令。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值