喜迎
春节

Git合并代码失败,如何重置分支


如果在项目上,你希望将 feature/v30 分支的代码合并到 develop 分支,但当前 develop 分支存在未提交的修改(已暂存和未暂存的文件)。以下是安全处理步骤和直接基于 feature/v30 创建新 develop 分支的方案:


方案一:安全合并(推荐)

1. 提交或暂存当前 develop 分支的修改

  • 提交修改(如果修改需要保留):
    1
    2
    git add .                          # 添加所有修改到暂存区
    git commit -m "临时提交:保存develop分支当前修改" # 提交到本地仓库
  • 暂存修改(如果不想立即提交):
    1
    git stash                          # 将修改保存到临时栈中

2. 拉取最新 feature/v30 分支代码

1
2
git checkout feature/v30             # 切换到feature/v30分支
git pull origin feature/v30 # 确保分支代码是最新的

3. 合并到 develop 分支

1
2
git checkout develop                 # 切换回develop分支
git merge feature/v30 # 合并feature/v30到develop
  • 解决冲突(如果有冲突):
    • 手动解决冲突文件后,执行:
      1
      2
      git add <冲突文件>               # 标记冲突已解决
      git commit # 完成合并提交

4. 恢复暂存的修改(如果之前使用了 git stash

1
git stash pop                        # 恢复暂存的修改

方案二:直接基于 feature/v30 创建新 develop 分支(谨慎操作)

如果确定需要丢弃当前 develop 分支的所有修改,并直接基于 feature/v30 创建一个新的 develop 分支(相当于用 feature/v30 覆盖 develop):

1. 备份当前 develop 分支(可选)

1
2
git checkout develop                 # 确保在develop分支
git branch develop_backup # 创建备份分支(防止意外)

2. 直接基于 feature/v30 创建新 develop 分支

1
2
3
git checkout feature/v30             # 切换到feature/v30分支
git branch -D develop # 强制删除本地develop分支(谨慎!)
git checkout -b develop # 基于feature/v30创建新的develop分支

3. 强制推送到远程(如果需要)

1
git push origin develop --force      # 强制覆盖远程develop分支(确保团队知晓!)

⚠️ 注意:强制推送会覆盖远程 develop 分支,可能导致其他协作者代码丢失,需提前协调!


推荐选择

  • 如果当前 develop 分支的修改需要保留 → 使用 方案一(提交或暂存修改后合并)。
  • 如果当前 develop 分支的修改可以丢弃 → 使用 方案二(直接基于 feature/v30 创建新分支)。

关键命令总结

场景 命令
提交所有修改 git add . && git commit -m "临时提交"
暂存修改 git stash
合并分支 git merge feature/v30
强制覆盖分支 git branch -D develop && git checkout -b develop && git push origin develop --force

执行前建议先备份重要数据!


文章作者: Crazy Boy
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Crazy Boy !
评 论
 上一篇
TrueSkill系统:微软提出的贝叶斯竞技评分革命
TrueSkill系统:微软提出的贝叶斯竞技评分革命
在竞技游戏中,如何科学评估玩家实力并构建公平对局?传统ELO系统虽简单有效,却无法处理团队协作与玩家状态波动的复杂场景。TrueSkill系统由微软研究院于2005年提出,基于贝叶斯概率模型,通过动态维护玩家实力的均值与方差,成为多玩家团队
2025-06-21
下一篇 
Git Commit Message 的最佳实践
Git Commit Message 的最佳实践
在 Git 中,一个好的 commit message 应该清晰、简洁,并能准确描述本次提交的内容。良好的 commit 规范有助于团队协作、代码审查(Code Review)以及后续的版本维护。以下是 Git Commit Message
2025-05-23
  目录
hexo