查看较短的 commit 号
git log --abbrev-commit
选取需要合并的一段区间的两个端点 commit 号,左开右闭,end_commit 没有默认的话默认是 HEAD
git rebase -i star_commit end_commit
如果发生错误,别慌,百度一下就能解决的
pick 保留,squash 被合并
一般是保留最上面的一个 commit ,然后下面的的 pick 都改为 s (squash 的简写)。
shift + z + z 保存退出进入下一步
合并注释
删除合并掉一些注释
shift + z + z 保存退出
强行上推,覆盖远端冲突的 commit
git push origin test_branch -f
不过最好先看下远端分支有没有被人改动了,没有被人改动再强推,不然容易把别人的代码给覆盖了
完成 rebase
撤销 rebase,日志中找到 rebase 之前的 commit 号
git reflog
reset
git reset --hard commit 号