Git commands cheat sheet (in progress)

·Updated ·1 min read

Use case: Working on 2 dev branches and merging one into the other and want to revert

git checkout dev_branch
git merge my_new_feature // merging my branch into develop

Ooops, now I realized my_new_feature has something wrong

git revert -m 1 <sha of merged commit>
OR
git revert HEAD

-m 1 means we keep the parent side of merge (dev_branch branch)

Fetch their new commits and merge to your branch

git fetch protected_repo

Committed but not pushed to remote. Want to get rid of latest commit

git reset --hard HEAD~1

Get a branch from a forked repo to your own repo (or to your own forked repo)

git reset HEAD~1

Get a branch from a forked repo to your own repo (or to your own forked repo)

git fetch git@github.com:theirusername/reponame.git theirbranch:ournameforbranch

Associate your local copy to the upstream branch

git remote add repo_name https://github.com/theirusername/their_repo.git

Fetch their new commits and merge to your branch

git fetch protected_repo
git merge protected_repo/foo