magit is pretty useful! In particular, I use M-x magit-blame for blaming a file line by line and jumping to previous versions, M-x magit-status to stage individual files, M-x magit-log-buffer-file to know the file's history. Very helpful when tracking down bugs.
ooh so many to choose from ... but what makes them great is actually the integration between them, made possible by everything being a text buffer. gnus, org, wgrep/wdired, occur, consult all work together to improve each other.