Travis Ingram     About     Archive     Feed
Beginner => Competent => Proficient

Dev Tools - Git, GitHub, Sublime Text

20140802 - Original Post

Here are some links that you might find helpful. They are meant to serve as additional resources to get you up and running. Don’t feel like you need to read them all or follow every piece of advice.

I’ve tried to highlight the potentially relevant bits but there’s a lot of information in some of them that could be useful later on. For example, I just recently moved away from the Terminal app built into OS X and started using iTerm. I didn’t need to but it offered a feature or two that I found handy and helpful.

Once you’ve worked with the tools that comprise your environment for a while, you’ll undoubtedly discover and develop preferences and habits around your own workflow.


Git and GitHub

As you progress in this course and as a developer, Git and GitHub will become more and more important. There are numerous resources available online. I’ve included a few that have helped me gain a better understanding of the basics, below.


Try Git, an interactive tutorial

Git allows groups of people to work on the same documents (often code) at the same time, and without stepping on each other’s toes. It’s a distributed version control system.

Try Git is a quick interactive tutorial that provides a great introduction to the concept of Git and an overview of the basic commands. It only takes about fifteen minutes to run through.


GitHub for Beginners: A Two Part Series

Lauren Orsini:

Git is version control software, which means it manages changes to a project without overwriting any part of that project.

This series covers the basics of Git as well as some additional information on navigating the command line. It doesn’t make many assumptions and is quite easy to follow. You can find the second part here.


Git Commands and Visualizations

Understanding how Git works, what the various commands and concepts mean, is challenging. At least it is for me. In addition to providing a nice overview, the Atlassian site also has some handy visualizations that might help clarify or provide a mental model of how Git is working.


Git Pro - Free, on the Git-SCM Homepage

Scott Chacon:

If you can read only one chapter to get going with Git, this is it. This chapter covers every basic command you need to do the vast majority of the things you’ll eventually spend your time doing with Git.

Once you’ve got a pretty decent grasp of the basics, it might be time to visit the Git homepage. In addition to housing all the documentation, they have a number of learning resources. Including the full version of Pro Git, which covers most every aspects of git. The Git Basics section linked above might prove helpful after you’ve spent some time using Git first hand.


Sublime Text

Sublime Text is a great editor. It’s a very powerful, extensible, and customizable application. But being a developer tool means it’s not very friendly, at least for new users. The links below should provide you with enough information to set up and modify Sublime Text to your liking.

I’ll add, though, that while the links provided are indeed handy, no one article provides a succinct overview of using Sublime Text. The biggest omission is the process by which you edit or modify the application preferences.

I wrote up a brief tutorial on how to make some basic changes, including the steps required to set up syntax specific preferences. Which, once changed, will ensure Ruby will always indent by 2 spaces. It can be found at the link below.

Modifying Sublime Text Preferences

As many of the articles below advise, you should consider installing Package Manager. It will enable you to extend the core functionality of Sublime Text and also add interesting themes and styles.

It’s also worth noting that even though most of these post reference Sublime Text 2, the information, almost universally, is applicable to Sublime Text 3. Which, while for download and use, is technically still in beta.


Perfect Workflow in Sublime Text 2

Jeffrey Way:

Hi, there! I am a confessed code editor addict. I’ve tried them all. I was an early adopter of Coda; I became a Vim faithful; and then, I found Sublime: far and away the best code editor I’ve ever used.

In this course, I’d like to show you every spec of information that I’ve learned from this amazing editor.

This free course provides 2.5 hours of video instruction on Sublime Text. It’s a great resource. The individual lessons are broken up into bite sized pieces, which makes finding the time to view them much easier. Most are less than five minutes in length.


Sublime Text (2)

Drew Barontini:

The usefulness of this setup guide will vary based on your personal preferences for how your text editor should function, but it should help with the initial setup of Sublime Text.

Drew opens his post with an appropriate caveat. While the information he provides should help you get started, some additional digging might well be required to get things set up just so. Each section should at least point you in the right direction. That’s the beauty of an application like Sublime Text, once you understand how to make modifications, you can quickly and easily change things around and experiment with your setup.


Setting up Sublime Text 2

Alex MacCaw:

After a few weeks of using Sublime Text, I can safely say that it’s the best editor I’ve used. It’s fast, extensible and hasn’t ever crashed on me. That said, no editor is perfect and Sublime Text does require a fair bit of initial configuration.

Alex walks through installing Package Manager and briefly covers themes, tabs & spaces, and changing the icon associated with Sublime Text.



Terminal / The Shell

Mac OS X provides an application to interact with the command line interface called Terminal. One of the best resources for quickly getting up to speed working via the command line is the Command Line Crash Course by Zed Shaw. It might take a day or two to get through but it’s a great way to get started.

Onno Schwanen created a concise list of commands that augment Zed’s course quite well.


By default, the Terminal app isn’t much to look at. Thankfully there are many ways to make changes to its appearance. Some are available through the built in preferences, (⌘ + ,) while others can be modified by editing the file(s) referenced by the application when it launches, namely .bash_profile.

This is also the file where you would add aliases, which are a handy way to reduce the number of keystrokes for commonly typed commands.

I’m working on a separate post that goes into more detail about setting up and modifying your shell. It’s a pretty intimidating process but one that I think can be understood. That’s my goal, anyway, to demystify it a little bit.


Documentation

Dash is an offline API Documentation Browser

Dash is an API Documentation Browser and Code Snippet Manager. Dash stores snippets of code and instantly searches offline documentation sets for 150+ APIs. You can even generate your own docsets or request docsets to be included.

I recently installed Dash and have been very impressed. As someone who is occasionally without access to the internet, having offline, language specific documentation comes in quite handy. There are numerous plugins that extend the core functionality. You can, for example, install the Sublime Text package to enable searching from within the editor.

Dash is available as a free download through the Mac App store, provided you don’t mind waiting for doc sets to load or the occasional reminder to purchase.