https://medium.com/@hendurhance/mastering-git-undo-commands-how-to-revert-reset-and-checkout-changes-2df8d4b6a472