假设我有一个主题分支,我想重写它的整个历史,因为它最初是从 master 为拉取请求创建的。git log
无论出于何种原因,使用它来确定我想要传递给的提交哈希并不容易或显而易见
git rebase -i <commit>
我知道我可以使用它git merge-base <branch1> <branch2 || master>
来查找两个引用可以追踪其祖先的提交,并可以使用它来确定提交。我想知道的是,是否有比使用更好的方法来交互式地重新设置整个分支(无论 master 是否先进)
git rebase -i `git merge-base my_branch master`
编辑:我不想更改在此分支上进行的第一次提交的父级,因此git rebase -i master
只有在创建分支后两个 master 都没有前进并且分支是从当前指向的提交 master 创建的情况下才有效。