RebaseChange: Throw InvalidChangeOperationException more often
Various places in this class were throwing IOException with a
descriptive error message, under the assumption that callers would
show this message to end users. This is a poor assumption;
IOExceptions thrown by lower-level classes (e.g. JGit Repository
implementations) should generally not be shown to users.
We already have a general exception type with a message that can be
shown to end users, and it is already thrown by several other methods
in this class, so use it.
As for IOExceptions, make sure we don't just drop them on the floor,
as they may indicate a lower-level problem in the repository. Log them
instead.
Change-Id: I25ca8f7d92705d62e08ebeb839578adcad608dc6
3 files changed