my git workflow uses rebase a lot. I always fetch upstream changes (the main repo i forked from) and then merge to my branches, and then rebase to remove useless (to me :D) merg
One Simple Answer: git rebase -i --autosquash --autostash
-i = interactively rebase
https://devdocs.io/git/git-rebase
This will...
tree-ish can be a commit hash or a branch name or a tag or any identifier.