【Git】-- 处理 Git 提交到错误分支的题目

打印 上一主题 下一主题

主题 1799|帖子 1799|积分 5397

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
假如你不小心把本应提交到 test 分支的代码提交到了 master 分支(但尚未 push),可以按照以下步骤解决:
方法一(推荐):使用 git reset 和 git stash


  • 起首,确保你在 master 分支:git checkout master
  • 打消最后一次提交但保留更改:git reset HEAD~1
    大概假如你想保留提交信息:git reset --soft HEAD~1
  • 暂存你的更改:git stash
  • 切换到 test 分支:git checkout test
  • 应用暂存的更改:git stash pop
  • 重新提交更改:
    1. $ git add .
    2. $ git commit -m "你的提交信息"
    复制代码
方法二:使用 git cherry-pick

假如你已经做了多个提交,大概想保留原来的提交信息:

  • 起首切换到 test 分支:git checkout test
  • 从 master 分支挑选提交:git cherry-pick <commit-hash>
    此中 <commit-hash> 是你在 master 上的错误提交的哈希值。
  • 回到 master 分支并删除错误的提交:
    1. $ git checkout master
    2. $ git reset --hard HEAD~1
    复制代码
方法三:创建新分支并重置

假如你愿意,也可以:

  • 从当前 master 创建新分支:git branch test
  • 重置 master 到之前的状态:
    1. git checkout master
    2. git reset --hard origin/master
    复制代码
  • 切换到 test 分支继承工作:git checkout test

推荐:方法一通常是最简单直接的解决方案。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

商道如狼道

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表