# Git-it (Desktop Version)

[![Build Status](https://travis-ci.org/maxogden/electron-packager.svg?branch=master)](https://travis-ci.org/maxogden/electron-packager)

![img](https://cloud.githubusercontent.com/assets/1305617/9652620/fce0cc46-51d1-11e5-9cb6-d2d71535dfc5.png)

Git-it is an app that teaches you Git and GitHub on the [command line](https://en.wikipedia.org/wiki/Command-line_interface).

Previously it ran _in_ terminal (the command line application) with a guide online but now the guide _is_ the app and it runs on your desktop on its own, thanks to [Electron.js](http://electron.atom.io).

---
## Hello, future Forkers, Branchers and Pull Requesters!

This application contains challenges for learning Git and GitHub—by using _real_ Git and GitHub, not emulators. You'll be learning the awesome (and not so scary) command line and GitHub which means when you finish all of the challenges you'll have _real_ repositories on your GitHub account and green squares on your [contribution chart](https://github.com/blog/1360-introducing-contributions).

![contributions](https://raw.githubusercontent.com/jlord/git-it/master/ghcc.png)

## What to Install

You'll just need Git (since that's what you're learning), a text editor and Git-it. The first two you'll continue to use once you're a Git/GitHub Pro. You'll create a GitHub account in the first challenge but if you already have one, you're already ahead!

#### Git

We recommend installing [GitHub Desktop](http://desktop.github.com) (free) because it installs Git in the most consistent way across operating systems (Windows, Mac, Linux). We won't use the app itself in the challenges, just the Git it installs.

Note—If you're using Windows, you should use the **Git Shell** app as your terminal. In Mac and Linux you can use **Terminal**.

#### Text Editor

I'm quite partial (I'm on the team!) but [Atom](http://atom.io) is a great text editor (also free) and it is built on [Electron.js](http://electron.atom.io), just like Git-it. Visit the website and download the version for your operating system.

#### Git-it

You can view the [releases](http://github.com/jlord/git-it-electron/releases) section of this repository to find the download for your operating system. Click to download your version and then place it where you keep your other applications.

## Get Started!

Open Git-it and click 'Get Started' to begin the first challenge. Have your terminal and text editor open, too. Follow along with the instructions in each challenge and use the terminal or editor as instructed.

When you've completed the steps in a challenge click 'Verify'. Depending on the challenge you may need to also select the folder you did your work in for Git-it to verify.

**Questions?** [Open an issue](http://github.com/jlord/git-it-electron/issues/new) on this repository.

**Want to contribute?** See the [contributing documentation](CONTRIBUTING.md)

---

### Tips For Getting Started

**Code snippets** often times look like `$ some code-stuff --here`. The dollar sign identifies the line as one a user would enter into the the command line, but you don't actually include it when you type it into terminal. In this case, you'd actually just type `some code-stuff --here`.

**Variables** are indicated by `<VARIABLENAME>` in code snippets. When you actually use the line of code, replace it, including the `<>`, with your variable. For instance to make a new folder in terminal the format is, `mkdir <FOLDERNAME>`, so if you wanted to make a folder named 'octocat', you'd type: `mkdir octocat`.

**Command line, terminal and bash** all basically mean the same thing: the MS-DOS, Doogie Howser looking screen full of words and numbers. It's awesomely powerful and allows you to control your computer with text commands.

You can do a lot of things from your terminal like delete, rename, copy or create files and folders; run scripts and send things back and forth between servers (like the ones storing things on GitHub.com) and your computer (also a server!).
