What is GitHub?


GitHub is a code hosting platform for collaboration and version control.

GitHub lets you (and others) work together on projects.

Sign up for GitHub at


GitHub essentials are:

  • Repositories
  • Branches
  • Commits
  • Pull Requests
  • Git (the version control software GitHub is built on)


$ git push origin heroku
$ cd /etc/
$ ls


A GitHub repository can be used to store a development project.

It can contain folders and any type of files (HTML, CSS, JavaScript, Documents, Data, Images).

A GitHub repository should also include a licence file and a README file about the project.

A GitHub repository can also be used to store ideas, or any resources that you want to share.


A GitHub branch is used to work with different versions of a repository at the same time.

By default a repository has a master branch (a production branch).

Any other branch is a copy of the master branch (as it was at a point in time).

New Branches are for bug fixes and feature work separate from the master branch. When changes are ready, they can be merged into the master branch. If you make changes to the master branch while working on a new branch, these updates can be pulled in.


At GitHub, changes are called commits.

Each commit (change) has a description explaining why a change was made.

Pull Requests

Pull Requests are the heart of GitHub collaboration.

With a pull request you are proposing that your changes should be merged (pulled in) with the master.

Pull requests show content differences, changes, additions, and subtractions in colors (green and red).

As soon as you have a commit, you can open a pull request and start a discussion, even before the code is finished.

A a great way to learn GitHub, before working on larger projects, is to open pull requests in your own repository and merge them yourself.

You merge any changes into the master by clicking a "Merge pull request" button.


After merging you can delete the branch by clicking a "Delete branch button".