当前位置: 首页 > news >正文

Git分支合并文件丢失问题解决教程

问题背景

在开发过程中遇到以下情况:

  • feature/shopping-cart-v1 - 包含完整购物车功能代码的好分支
  • feature/shopping-cart-v1-backup - 合并main后丢失部分文件的问题分支
  • main - 受保护分支,不允许直接推送,且存在文件缺失问题

合并时出现大量文件删除:

85 files changed, 30 insertions(+), 2100 deletions(-)
delete mode 100644 src/main/java/com/demo/controller/CartController.java
delete mode 100644 src/main/java/com/demo/service/CartService.java
delete mode 100644 src/main/java/com/demo/repository/CartRepository.java
... (大量购物车相关文件被删除)

快速解决方案

方法1:使用ours策略(推荐)

# 1. 切换到问题分支
git checkout feature/shopping-cart-v1-backup# 2. 重置为完整代码的分支
git reset --hard feature/shopping-cart-v1# 3. 安全合并main分支(保留所有文件)
git merge -s ours origin/main -m "Merge main while preserving shopping cart files"# 4. 推送
git push origin feature/shopping-cart-v1-backup

方法2:手动恢复文件

# 从好的分支恢复被删除的文件
git checkout feature/shopping-cart-v1 -- src/main/java/com/demo/controller/
git checkout feature/shopping-cart-v1 -- src/main/java/com/demo/service/# 提交恢复
git add .
git commit -m "Restore deleted shopping cart files"
git push origin feature/shopping-cart-v1-backup

核心要点

  • git merge -s ours:创建合并记录,但保留当前分支所有文件
  • 适用场景:目标分支有问题,需要保护源分支代码
  • 预防措施:重要开发前先备份分支

总结

当main分支有问题且受保护时,使用ours策略是最安全的合并方法,既满足合并要求又保护代码不丢失。

http://www.dtcms.com/a/481884.html

相关文章:

  • GESP2025年9月认证C++四级( 第三部分编程题(2)最长连续段)
  • 花都建设局网站成都网站设计龙兵科技
  • OpenCV Python 绑定:原理与实战
  • flutter布局调试
  • Linux下运行Jmeter
  • 矩阵快速幂
  • DeviceNet转Modbus TCP网关:破解水利工程协议互联壁垒
  • 仿搜狐视频网站源码网页设计做网站
  • 重庆信息门户网站网站建立初步教案
  • 100美元成本复现ChatGPT:nanochat全栈技术栈深度剖析
  • 腾讯混元P3-SAM: Native 3D Part Segmentation
  • Gecko SDK从入门到提高(5)
  • Cesium格式模型制作,3dtiles制作B3DM格式文件制作。数字孪生模型制作
  • Andrej Karpathy 发布新项目 nanochat:一个从零开始构建的极简全栈式 ChatGPT 克隆
  • 苍穹外卖[操作步骤+讲解]
  • 用vs2008做网站教程成都旅游景点排名前十
  • 悟空 AI CRM 的回款功能:加速资金回流,保障企业财务健康
  • 奥威BI金蝶数据分析可视化方案:200+开箱即用报表驱动智能决策
  • 盲盒小程序系统开发:未来趋势与长期价值
  • 查找成绩(数组实现)
  • 桃城区网站制作公司做网站注册商标
  • RCE 漏洞全解析:从原理到实战
  • VScode无法获取扩展 Error while fetching extensions.Failed to fetch
  • 用 Docker + Squoosh 打造图片压缩 API 服务
  • 仙桃网站设计公司易拉罐手工制作大全
  • 企业级DevOps选型新思维:从“工具堆砌”到“平台赋能”
  • ThinkPHP8集成RabbitMQ的完整案例实现 原创
  • 一份关于语言模型对齐的技术论述:从基于PPO的RLHF到直接偏好优化
  • 扬州市建设厅网站网站空间在哪里
  • 开源 C++ QT QML 开发(十九)多媒体--音频录制