如何解决错误地从另一个分支而不是主线创建了一个分支
我是 git 新手,不小心从另一个分支而不是 main
创建了新分支。
我当前的地图:
f-g
/
d-e
/
a-b-c
f
和 g
应该来自 main
d-e
/
a-b-c
\
f-g
我需要将 f
和 g
移动到来自 main 的新分支。
注意:我已经将它们推送到 GitHub
解决方法
您可以使用 git rebase
移动分支以从 c
开始:
假设您当前的分支点提交 g
确保您的工作树是干净的(运行 git status
以找出答案)。
创建一个指向 g
的备份分支(运行 git branch backup
)。如果您对结果不满意,可以使用它来恢复当前分支的原始位置。您可以在最后删除它 (git branch -D backup
)。
移动提交运行:
git rebase --onto c HEAD~2
此命令会剪切从当前分支可访问且无法从 HEAD~2
访问的提交,并在提交 c
之上重放它们。
将 2
替换为您要移动的确切提交数。
如果 git rebase
操作失败(由于冲突),请运行 git rebase --abort
将分支恢复到其原始位置(在提交 g
时)。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。