https://medium.com/@manemoj01/mastering-git-commands-a-comprehensive-guide-to-efficient-version-control-part-2-b50d46b2866e