Version Control
Git is the universal version control system for software development. Understanding Git beyond
add,commit, andpush— the object model, rebase vs. merge, branching strategies, and conflict resolution — makes you a faster, more confident collaborator and signals seniority in interviews and code reviews.
What You'll Find Here
Notes are being added. Planned topics:
| Topic | Description |
|---|---|
| Git Object Model | Blobs, trees, commits, tags — how Git stores data as a content-addressable store. |
| Branching Strategies | Git Flow, GitHub Flow, trunk-based development — when each fits. |
| Rebase vs. Merge | Linear history vs. merge commits; interactive rebase for cleaning up commits. |
| Working with Remotes | fetch, pull, push, tracking branches, upstream conventions. |
| Conflict Resolution | Three-way merge, git rerere, merge tools. |
| Git Hooks & Workflows | Pre-commit hooks for linting; PR workflows; protected branches. |
Learning Path
- Git Object Model — understanding SHA-1 content addressing makes
reset,revert, andreflogintuitive. - Branching Strategies — trunk-based development is the modern default for CI/CD-heavy teams.
- Rebase vs. Merge — this is the most-debated Git question in team settings; know both and the trade-offs.
- Git Hooks — pre-commit hooks enforce code quality without CI round-trips.
Related Domains
- DevOps — branching strategies directly shape CI/CD pipeline design.
- Build Tools — Maven/Gradle version management pairs with semantic versioning in Git tags.