Git 学习笔记整理链接:

 Git 指令速查(含常见工作流 + 易错点)_git指令速查-CSDN博客
https://blog.csdn.net/m0_58954356/article/details/154072623

Git分支实操指南:本地学习分支创建+远程同步避坑全解析-CSDN博客
https://blog.csdn.net/m0_58954356/article/details/155935939
Git 中新建学习分支 + 暂存修改 + VSCode 可视化查看改动(超详细教程)_vscode git暂存的内容在哪里可以看到-CSDN博客
https://blog.csdn.net/m0_58954356/article/details/154744622
VSCode + Git 全流程可视化操作指南(超详细保姆级)_vscode git-CSDN博客
https://blog.csdn.net/m0_58954356/article/details/154545616

1.「分支提交历史不一致」问题

在github中建立仓库时,尽量不要勾选README.md.gitignoreLICENSE文件,否则会出现

main -> main (non-fast-forward)的推送报错(推送到远程仓库时出现“git无法推送refs到远端”)

典型的「分支提交历史不一致」问题

若远程仓库中已经有了文件,出现上述报错,解决方案是:

1.1 先确认远程关联是仓库 B(避免拉错仓库):

git remote -v

结果如下:

github  https://github.com/Live-Yourself/Christmas-Tree.git (fetch)
github  https://github.com/Live-Yourself/Christmas-Tree.git (push)

可以知道,远程关联仓库名字为github

1.2 拉取远程仓库 B 的main分支变更,并允许合并无关联的提交历史

(关键参数--allow-unrelated-histories):

git pull github main --allow-unrelated-histories

github为远程仓库名,main为从远程仓库中拉取的分支名,即将github仓库中原有的文件拉取到本地仓库中与本地文件进行合并。

1.3 解决可能的合并冲突(若有):

目录

1.「分支提交历史不一致」问题

1.1 先确认远程关联是仓库 B(避免拉错仓库):

1.2 拉取远程仓库 B 的main分支变更,并允许合并无关联的提交历史

(关键参数--allow-unrelated-histories):

1.3 解决可能的合并冲突(若有):


  • 执行上述命令后,若本地和远程有同名文件(比如都有README.md),Git 会提示「合并冲突」,并在 VS Code 中标记冲突文件。

  • 打开冲突文件,你会看到<<<<<<< HEAD(本地文件内容)、=======(分隔符)、>>>>>>> origin/main(远程文件内容)的标记。

  • 编辑文件:保留需要的内容,删除冲突标记,保存文件。

  • 冲突解决后,将修改后的文件添加到暂存区并提交合并结果:

    git add .
    git commit -m "合并远程仓库B的现有文件,解决推送冲突"

最后重新上传到远程仓库即可。

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐