Version control (also called source control or revision control) is a system that manages changes to source code or any set of files. It records every modification with a timestamp and author, creates a complete history, and enables multiple developers to work on the same codebase simultaneously without conflicts.
Git — The Industry Standard
Git, created by Linus Torvalds in 2005, is the dominant version control system. It is distributed — every developer has a full copy of the repository history on their machine.
Core Git Concepts
- Repository (repo) — The project folder tracked by Git, containing all history.
- Commit — A snapshot of the project at a point in time, with a message.
- Branch — An independent line of development.
main/masteris the default. - Merge — Combine changes from one branch into another.
- Pull Request (PR) — A request to merge a branch, typically reviewed by teammates.
- Remote — A hosted copy of the repo (GitHub, GitLab, Bitbucket).
Common Git Commands
git init— Initialise a new repo.git clone <url>— Copy a remote repo locally.git add .— Stage all changes.git commit -m "message"— Save a snapshot.git push— Upload commits to the remote.git pull— Fetch and merge changes from the remote.