切换分支时如何丢弃其他分支修改,恢复develop分支纯净代码?
解决方法
要回到完全干净的develop分支状态,并废弃目标分支,按以下步骤操作:
1. 清理develop分支的本地修改
你执行git reset --hard后代码没变化,大概率是工作区存在未被Git跟踪的文件或未提交的修改残留。在develop分支下依次执行以下命令:
- 重置HEAD、暂存区和工作区到当前develop的最新提交,彻底清除已跟踪文件的修改:
git reset --hard HEAD - 删除所有未跟踪的文件和目录(包括新建的文件、文件夹,此操作不可逆,确认不需要再执行):
git clean -fd
执行完成后,develop分支就会回到无任何本地修改的初始状态。
2. 废弃并删除improvement/02-improve-cart-page分支
确认不需要该分支的任何修改后,直接强制删除分支(因分支存在未推送的提交,用-D参数跳过Git的保护提示):
git branch -D improvement/02-improve-cart-page
补充说明
- 若improvement/02分支有已提交但未推送的修改,
git branch -D会直接丢弃这些提交,请确认后再执行。 - 对于未推送到GitHub的improvement/01-improve-cart-page分支,若不需要保留,可使用同样的
git branch -D improvement/01-improve-cart-page命令删除;需要保留则忽略此操作。
内容的提问来源于stack exchange,提问作者Dan
相关产品推荐
相关产品推荐

