Mid Version Control reset vs revert? reset rewrites history; revert creates a new commit to undo changes, preserving history.