https://medium.com/@mohdabid.ali221/understanding-git-commands-and-their-usage-with-examples-12c0bced35f0