All programmers have a favorite, go to, text editor. This is mine. Sublime text.
This editor is extremely hackable. Almost all of it’s attributes can be modified to have it work exactly as you prefer. Wanna replace tabs with spaces? No problem, or not. Trim whitespace on save, sure, or maybe not. Insert a snippet of prepared text, easy peasy. I like the dark theme and dark syntax highlighting to be gentle to my aging eyes. So many options. But then… it just gets better…
Sublime Text has a sister called Sublime Merge. Sublime Merge is a graphic GIT client that is tightly interwoven with Sublime Text.
Sublime Merge makes it very easy to visualize the status of your GIT repository, be it local or remote. It makes committing locally and pushing to a remote site very easy. While there are just some GIT tasks that will require dropping to the command line, you can manage most of your day to day tasks in Sublime Merge quickly and easily, with superb visual feedback.
For more information, see Sublime Text