最近在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到了新技能。
原创文章,记载成长,也期望对你有帮助!喜欢请点赞哦~
作者:前端小小梦
主页:了解更多,点击个人主页