Git本地和远程仓库合并

Git
Uiaoin 2021-12-05 123

本地初始化了非空仓库,同时远程(GitHub)上也创建了非空仓库(包含README、LICENSE等文件),希望将本地和远程同步后再push。

1、初始化本地仓库

git init
git add .
git commit -m 'init repository'

2、添加远程仓库

git remote add origin git@github.com:uioain/......
git branch -M main

3、打算合并

git pull origin main

结果报如下错误:

From github.com:uiaoin/......

 * branch            main       -> FETCH_HEAD

 * [new branch]      main       -> origin/main

fatal: refusing to merge unrelated histories

不难理解,refusing to merge unrelated histories 翻译过来就是 拒绝提交不相关的记录,因为本地和远程都有记录。

解决办法就是再pull的时候加上参数 --allow-unrelated-histories 意为允许不相关的记录,即:

git pull origin main --allow-unrelated-histories

4、推送至远程仓库

git push -u origin master

注意:执行完第三步后,main会和远程合并后自动删除,只存在master分支

 

加载更多