# GIT
Git is distrubuted version control system that helps developers track their codebases, collaborate with others and manage multiple versions of a project. In Git every developer has the full copy of the repository on their machine.
Git has so many features some are listed below:
1. It allows version tracking.
2. it provides extensive tooling to developers
3. merging of branches which contain bug fixex of added features is possible
4. Git allows files to be hosted in a staging area on the local machine.
5. Git makes it possible for repositories to be created on the local machine
# GITHUB
Github is a web based platform designed for version control and collaboration. GitHub hosts remote repositories and provides an interface to manage code.
GitHub offers collaboration features like
1. Bug tracking
2. Feature request
3. Task management
4. and writing wikis.
Now that we have that covered it is time to look into the features of Git on the local machine
On your Local machine Git works in three stages
* Working directory .
* Staging area.
* Local repository.
Now in working with Git the Command line interface is very key, although the Graphical User interface may also be used but will allow limited functionality.
There are some basic commands in Git that any proper developer must be able to manipulate and use.
they include:
1. git add
2. git status
3. git clone
4. git init
5. git push
6. git pull
7. git commit
8. git branch
9. git fork
10. git fetch
11. git checkout
These commands are key knowledge in understanding and working in the environment of Git.