You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

误在master分支提交,如何迁移至Development分支并重置master?(VS内置Git GUI)

解决方案(VS内置Git GUI操作)

1. 同步远程分支

  • 打开VS的Git面板(快捷键:Ctrl+Shift+G)
  • 点击「拉取」按钮,确保本地master和Development分支与远程保持同步

2. 迁移master分支的提交到Development

方式一:Cherry-Pick(适合少量独立提交)

  • 在Git面板的分支列表中,切换到Development分支
  • 切换到「提交」标签页,点击顶部分支选择框,选择master分支,找到你需要迁移的所有提交
  • 按住Ctrl选中目标提交,右键点击选择「Cherry Pick」
  • 若出现冲突,解决冲突后完成提交即可

方式二:Rebase(适合连续的多提交)

  • 切换到master分支
  • 在分支列表中右键点击Development分支,选择「Rebase current branch onto selected branch」
  • 完成rebase后,切换到Development分支,右键点击选择「Reset current branch to...」,选择master分支的当前状态并确认
  • 切回master分支,右键点击选择「Reset current branch to...」,选择远程的origin/master,选择「Hard」模式(会丢弃本地未推送的所有更改)

3. 推送Development分支

  • 切换到Development分支,点击Git面板的「推送」按钮,将迁移后的提交推送到远程

4. 重置master分支到远程状态

  • 切换到master分支,右键点击远程的origin/master,选择「Reset local branch to...」,选择「Hard」选项(此操作会彻底删除本地master上未推送的提交,确认后执行)

命令行备选方案

如果GUI操作遇到问题,可使用以下命令:

  1. 同步远程分支:
git fetch origin
  1. 切换到Development并拉取最新代码:
git checkout Development
git pull origin Development
  1. 迁移提交(Cherry-Pick示例,替换<起始提交哈希>为master分支上你开始错误提交前的那个提交哈希):
git cherry-pick <起始提交哈希>..master

或者用Rebase方式:

git checkout master
git rebase Development
git checkout Development
git merge master
git checkout master
git reset --hard origin/master
  1. 推送Development分支:
git push origin Development

内容的提问来源于stack exchange,提问作者TorusWithSprinkles

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.09 03:22:17