What is Github

As per Github, it is the best place to share code with friends, co-workers, classmates and complete strangers. More generally I call it Coding Social Networking. You don't push status updates but Repositories and chunks of code :) . Oh! And yeah you can comment here as well, well that's a different type of comment, don't get it confused with Facebook ones. ;)

GIT, the heart of Github makes it very special, GIT is an open source project started by Linus Torvalds, creator of Linux. GIT is a version control system for managing changes in programs, sites, documents and also to maintain a record of (version) history.

Github is actually more than that, the flagship functionality of github is “forking”. The other main features are Pull request and merge.

Unlike GIT, Github can be accessed via a Graphical User Interface as well. While talking about Github some terms must be understood.

Repository: It is the place where your project is stored.

Version Control: It keeps the snapshot of every chunk of code, if over-written or added to any file. It keeps of track of all files that are present or changed and the code in those files as well.

Commit

This is where you take a snapshot of a repository after adding changes to a repository and before pushing.

  • Push: It means updating the code on a specific repository.

  • Command Line: A computer program via which we can commit changes to a repository.

  • Branch: If multiple people are working on the same project, branching comes in handy where people can maintain their own version controls in their own repository and we can merge all branches before pushing to the repository.

  • Clone: Copying the repository on your machine.

Local Repository: Taking a clone of a repository on your machine and working on it, whether or not an internet connection is working.