git config user.name "John Doe"
git config user.email email@email.com
git config user.signingkey kye_id
git config commit.gpgsign true
git checkout other_branch_name -- file_path
git rebase --interactive HEAD~n
git remote prune origin
git branch --merged >/tmp/merged-branches && vi /tmp/merged-branches && xargs git branch -d </tmp/merged-branches
git branch >/tmp/merged-branches && vi /tmp/merged-branches && xargs git branch -D </tmp/merged-branches
git submodule update --init --recursive
git tag tagname
git push origin --tags
git update-index --chmod=+x file.name
git reset --hard HEAD~1
git tag -am "annotation goes here" tagname_goes_here # cut a tag
git tag -d tagname_goes_here # burn it
git tag -am "annotation goes here" tagname_goes_here # cut another tag
git push --tags # push tags to remote
git push origin :refs/tags/tagname_goes_here # delete tag from remote
https://gist.github.com/myusuf3/7f645819ded92bda6677