Git - 强制替换覆盖 master 分支解决方案

问题描述

在版本迭代中,通常会保持一个主分支 master,及多个 dev 分支,但是因为 dev 分支的开发周期过长,迭代太多而没有及时维护 master ,导致后来发版上线的大部分代码都在 dev 分支上,如果将代码在 master 分支合并会导致很多冲突,最后想丢弃原始 master 分支上的代码,直接将已经测试确认过的 dev 分支强行覆盖到 master 上,并且保留前期的开发提交 git 记录,该如何操作呢?

解决方案

1、关闭 git 仓库的 master 分支保护

setting => repository => protectd branch => master(unprotected)

2、切换到 dev 分支,并拉取远程 dev 分支最新代码

bash 复制代码
git checkout dev

git pull origin dev

3、将当前 dev 分支强行推送到远程 master 主分支进行覆盖

bash 复制代码
git push origin dev:master -f

4、把 head 指向 master 最新版本

bash 复制代码
git reset --hard origin/master

5、在 git 仓库中将 master 分支重新进行保护

  • 此时回到 git 仓库去看 master 分支的代码和 dev 分支的代码就完全一样了
相关推荐
粥里有勺糖21 分钟前
视野修炼-技术周刊第122期 | 发光图片制作
前端·javascript·github
码农黛兮_4626 分钟前
Git 常用命令大全
git
qianmoQ38 分钟前
GitHub 趋势日报 (2025年06月05日)
github
小馒头君君40 分钟前
3 个优质的终端 GitHub 开源工具
github
一弓虽43 分钟前
git 学习
git·学习
MarkHD4 小时前
AI编程助手入门指南:GitHub Copilot、Cursor与Claude的安装与基础使用
github·copilot·ai编程
猫头虎5 小时前
[特殊字符]解决 “IDEA 登录失败。不支持早于 14.0 的 GitLab 版本” 问题的几种方法
java·ide·网络协议·http·https·gitlab·intellij-idea
追逐时光者6 小时前
2个 GitHub 实用辅助神器,帮你快速了解和上手 GitHub 开源项目(附带 GitHub 加速神器)!
github
风早君8 小时前
jenkins集成gitlab发布到远程服务器
服务器·gitlab·jenkins
寻月隐君8 小时前
Web3实战:Solana CPI全解析,从Anchor封装到PDA转账
后端·web3·github