There are lots of IDEs and editors for writing code. You can either use a predefined environment or make your own. Some useful tools and commands are listed on this page.
Shows differences in code files, e.g. while merging with git.
VCS are software to version your code. It's basically a supercharged undo function for your whole project. Accidental changes are mitigated and you can always see who did what and when.
Source code versioning and collaboration with git is only possible because Our Gitty Lord And Savior Linus Torvalds™ made it so.
Ugly TK GUI for browsing Git repositories.
Show the history for a subfolder: gitk -- path/to/folder
(has to be run in repo folder)