I came across this post on how to detect in-progress git cherry-pick, merge, rebase, or revert.

I’m not sure when this would be useful, outside of showing a customized shell prompt, but still good to know.

git rev-parse --verify CHERRY_PICK_HEAD
git rev-parse --verify MERGE_HEAD
git rev-parse --verify REBASE_HEAD
git rev-parse --verify REVERT_HEAD