Вы можете попробовать:
git rebase -i $( git merge-base master HEAD )
Вы находите точку, где расходятся мастер и ваша текущая ветвь (или, по крайней мере, один из последних общих предков) и используете его в качестве параметра для перебазирования.Это может работать.
Если вы хотите узнать , сколько ревизий имеется в вашей ветви:
git log --pretty=%h $( git merge-base master HEAD ) | wc -l
В качестве стороныобратите внимание, вы могли бы так же легко раздавить, не выполняя ребаз:
git reset --soft $( git merge-base master HEAD )
git commit -m "Squashed feature"
ИМХО предупреждение: я не понимаю, почему люди предпочли бы пойти в редактор, редактировать Бог знает, сколько строк, когда пара команд будетсделать трюк.Но .... в любом случае.