Properly configure your user information
GitHub tracks your changes by using the information provided by your ~/.gitconfig. If you work on more than one machine and your ~/.gitconfig is not properly configured, you will probably end up with duplicated commits and disorganized history. Here are the lines you will have to modify according to your GitHub credentials.
Properly configure your difftool and mergetool.
The difftool and mergetool are the software Git will execute during diff or conflict resolution operations respectively.
Create aliases for the most common used commands. You will noticed that you will end up issuing the same Git command several times a day. Creating aliases to the most common used commands can save precious minutes every day.
[alias]
st = status
ci = commit
br = branch
co = checkout
ds = diff --staged
changes = log -n1 -p --format=fuller
amend = commit --amend -C HEAD
undo = clean -f -d
undoci = reset HEAD~1
unstage = reset HEAD --
lg = log --graph --pretty=format:'%Cred%h%Creset -%C(yellow)%d%Creset %s %Cgreen(%cr) %C(bold blue)<%an>%Creset' --abbrev-commit
ls = log --pretty=format:\"%C(yellow)%h %C(blue)%ad%C(red)%d %C(reset)%s%C(green) [%cn]\" --decorate --date=short
lg-full = log --name-status --pretty=fuller