1) GIT
Git is a version control system (VCS) for tracking changes in computer files and coordinating work on those files among multiple people. It is primarily used for software development,[9] but it can be used to keep track of changes in any set of files. As a distributed revision control system it is aimed at speed, data integrity and support for distributed, non-linear workflows.
Git was created by Linus Torvalds in 2005 for development of the Linux kernel, with other kernel developers contributing to its initial development.
As with most other distributed version control systems, and unlike most client–server systems, every Git directory on every computer is a full-fledged repository with complete history and full version tracking abilities, independent of network access or a central server.
2) GITHUB AND BITBUCKET
GitHub is a web-based Git or version control repository and Internet hosting service. It offers all of the distributed version control and source code management functionality of Git as well as adding its own features.
Example- like social networking sites ex- facebook , you share your pictures etc.. In similar manner github and bitbucket helps you to share your code and other users to get the your code for their use. they can have copy of your code and make changes as per their need.
3) SOURCE TREE
Since GIT is a command-line tool . Sometimes it is hard to remember commands.
Source Tree is GUI based GIT application tool. It provides an nice visual interface between you and Git, no more command line!