What is GIT and Why Use It
What is GIT and Why Use It

Introduction
GIT is a distributed version control system that tracks changes in your code files. It was created by Linus Torvalds in 2005 and has become the standard tool for software development teams worldwide.
Why Use GIT?
Version History
GIT keeps a complete history of every change made to your project. You can:
- See who made changes and when
- Revert to any previous version
- Compare different versions of your code
- Understand how your project evolved over time
Collaboration
When multiple developers work on the same project, GIT enables:
- Working on different features simultaneously
- Merging changes from multiple team members
- Tracking who is responsible for each change
- Preventing conflicts from overwriting work
Branching
GIT allows you to create separate lines of development:
- Work on new features without affecting the main code
- Experiment freely without risk
- Test ideas in isolation
- Create bug fixes separately from new features
GIT vs Other Version Control Systems
| Feature | GIT | SVN | Mercurial |
|---|---|---|---|
| Type | Distributed | Centralized | Distributed |
| Speed | Very Fast | Moderate | Fast |
| Branching | Easy, Cheap | Difficult | Easy |
| Offline Work | Full | Limited | Full |
Key Concepts
Repository
A repository (repo) is a project folder that GIT monitors. It contains all your files and their complete history.
Commit
A commit is like a snapshot of your project at a specific point in time. Each commit has:
- A unique identifier (SHA hash)
- Author information
- Timestamp
- Commit message describing the changes
Branch
A branch is an independent line of development. The main branch is typically called "main" or "master".
Remote
A remote is a version of your repository hosted on another computer or server, like GitHub, GitLab, or Bitbucket.
Real-World Example
Imagine you are building a website with a team:
Project Start
|
v
[Developer A] ----> Feature: Login Page
|
[Developer B] ----> Feature: User Profile
|
v
[Developer C] ----> Bug Fix: Navigation Menu
|
v
All Merge to Main
Each developer works on their own branch. When done, they merge their changes back to the main branch.
Summary
GIT is essential for modern software development because it:
- Provides complete version history
- Enables seamless collaboration
- Makes branching and experimentation safe
- Works offline with full functionality
- Is the industry standard for version control
Next Lesson
In the next lesson, we will learn how to install GIT on different operating systems including Ubuntu (WSL) and Windows.
Quiz - Quiz - What is GIT and Why Use It
1. What is GIT?
2. Who created GIT?
3. What is a repository in GIT?
4. What is a commit in GIT?
5. Which of the following are benefits of using GIT? (Select all that apply) multiple answers