A couple of other tricks I find useful:
a. The ForwardAgent config option: From the man page “Specifies whether the connection to the authentication agent (if any) will be forwarded to the remote machine.” …basically if you are on hostA and login into hostB using ssh and now want to access hostC (where your pub key from hostA is already setup in authorized hosts (eg: a remote git server)), you needn’t create another set of keys for hostB and then add them to hostC. Simply add “ForwardAgent yes” and you credentials ‘travel’ with you.
b. ssh escapes: From within an ssh session try : ~+h …the most useful espace sequences for me are ~+^Z (suspend ssh) and ~+. (terminate connection – especially if the remote ssh host dies unexpectedly)