Algo que eu sempre me esqueço quando vou configurar uma nova máquina são as configurações do ~/.gitconfig. Dentre elas:
[core] excludesfile = /home/daniel/global-gitignore
Essa configuração faz com que o arquivo /home/daniel/global-gitignore funcione como o .gitignore mas para todos os repositórios git, sendo um adicional ao eventual .gitignore do seu projeto.
[push] default = tracking
Define que, por default, o comando git push faça push na branch “trackada”
[alias] co = checkout st = status ci = commit
Aliases essenciais que substituem os git checkout minha-branch por git co minha-branch e etc.