What is GitHub? Difference between Git and GitHub?

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

GitHub essentials are:

  • Repositories
  • Branches
  • Commits
  • Pull Requests

Repository

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.

Branch

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.

Commits

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).

What is difference between git and github ?

Git is a version control system, a tool to manage your source code history.

GitHub is a hosting service for Git repositories.

So they are not the same thing: Git is the tool, GitHub is the service for projects that use Git.

Git: It is a Distributed Version Control System for tracking versions of files. 

Github: It is  web portal and cloud hosting service for your Git repositories.