【Git】代码提交到了错误的分支怎么办
最近在git的代码提交中遇到了一个这样的情况,A分支
要提交功能a1、a2、a3
,B分支
要提交功能b1、b2、b3
,但是误把a2
功能提交到了B分支
上,一开始以为得在在A分支上重新把a2功能重写一遍,后来查阅了一番才知道有git cherry-pick
和 git rebase
这种好东西。
首先要解决上面的失误,分为两步:
把a2功能添加回A分支
把a2功能从B分支中删除
1. 把a2功能添加回A分支(cherry-pick)
直接切到A分支,然后运行
git cherry-pick a2功能的SHA值
然后就可以了,就是这么简单就把a2挪到A分支上
2. 把a2功能从B分支中删掉(rebase)
切到B分支,然后运行
git rebase -i a2前一个功能的SHA值
运行后我们就能进入SHA
值后面的提交文本记录
我们把a2对应的pick改为drop,就能删掉对应的提交,并且不影响后续b3的提交。
编辑方式
:按i
进入编辑状态,按Esc
和:wq
就能保存退出。
改成这样的就可以了
就能成功达到我们想要的效果了
平时Git Rebase 很少用到,直到这一次,不得不用,最后也顺利解决了问题,同时get到了新技能。
作者:前端小小梦
链接:https://juejin.cn/post/7224382425664159800
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。
链接:https://juejin.cn/post/7224382425664159800
来源:稀土掘金
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。