Git 推送实战:冲突解决与强制推送

Git 推送实战:冲突解决与强制推送

场景回顾

今天在给项目推送代码时遇到了典型的 Git 冲突问题,完整流程如下:

1. 初始状态检查

复制代码
git status
  • 本地分支领先远程 4 个提交
  • 工作区干净,无待提交更改

2. 首次推送失败

复制代码
git push

错误信息:

复制代码
! [rejected] master -> master (fetch first)
error: failed to push some refs to 'https://gitee.com/...'

原因: 远程仓库包含本地没有的提交,存在分叉历史

3. 尝试拉取合并

复制代码
git pull

错误信息:

复制代码
remote: reject by [gitee]
fatal: unable to access '...': The requested URL returned error: 400

原因: Gitee 拒绝了合并请求(可能是权限或配置问题)

4. 解决方案:强制推送

复制代码
git push -f

结果: 成功推送,远程仓库被强制更新为本地版本


关键命令速查

场景 命令
查看状态 git status
普通推送 git push
拉取更新 git pull
强制推送 git push -f

注意事项

  • 强制推送会覆盖远程历史,团队协作时慎用
  • 多人协作建议先 pull 解决冲突后再 push
  • 个人项目或确定远程更改可丢弃时使用 -f

推送完成,代码已同步到 Gitee。

相关推荐
维基框架1 天前
OpenAI在给Git做优化 上游行为要变了
人工智能·git
1名持续学习的码农1 天前
GPT Plus、GPT Pro用户第一次用Codex,项目权限和Git分支怎么设置?
人工智能·git·gpt·elasticsearch·ai编程·codex
晨曦中的暮雨2 天前
Learn Claude Code:CodeAgent 与后端程序大搭配——定时任务、Git Worktree 和MCP 服务
git·ai·llm·agent
减瓦2 天前
用 Git 为本地文件打造一台时光机
开发语言·git·编辑器
Huangjin007_2 天前
【Linux 系统篇(十一)】基础开发工具(六) —— 版本控制器 Git
linux·运维·git
影视飓风TIM2 天前
Linux下C语言缓冲区原理 + Git版本控制
linux·c语言·git
tianyuanwo2 天前
当提交标题重复阻塞CI:Git分支修复实战
git·ci/cd·分支基线调整
Salt & Light2 天前
Git 分支操作与恢复完整记录
git
重生的黑客2 天前
从远程仓库到企业级协作:Git push、pull、PR、多人开发与分支模型
git·分支·多人协作