Use Reset When
You are cleaning up local work that has not been shared yet.
You want to move HEAD and maybe unstage or discard changes on your machine.
The practical difference between rewriting local history and undoing shared history safely.
Reset moves branch pointers and can discard local state. Revert records a new commit that undoes an old one. That makes reset a local cleanup tool and revert a collaboration-safe undo tool.
You are cleaning up local work that has not been shared yet.
You want to move HEAD and maybe unstage or discard changes on your machine.
The original commit has already been pushed or shared.
You need an auditable undo that teammates can pull normally.
Reset rewrites. Revert records.