I discovered while using this locally that it is possible to get a series of
rebased commits that cause the rebase to failure. The problem goes away when one
applies the changes one at a time rather than all at once. This is also just a
more robust way to do this since we are not relying on git-clang-format's hunk
logic and git's rebase hunk logic to be in sync.
This is a small zsh script that automates running git-clang-format + git rebase
squash on a branch. The intent is that one can just work on ones branch, run
this before creating a PR on github and move on with life. The assumption is
that ones tree is clean without any changes so we should be able to apply
git-clang-format cleanly by applying it to each commit one by one working
backwards from ToT to the passed in commit's parent commit.