Skip to content

Git Version Control

Git হলো আধুনিক সফটওয়্যার ডেভেলপমেন্টের জন্য অপরিহার্য একটি টুল। এটি আপনাকে কোডের ভার্সন ম্যানেজ করতে এবং টিমের সাথে কোলাবোরেট করতে সাহায্য করে।

Learning Path

Foundations

  • Version Control Concepts: Centralized vs Distributed.
  • Setup: Installation & Configuration.
  • Micro-Architecture: Working Directory, Staging, Repository.
  • Basic Commands: init, add, commit, log, status.

Branching & Merging

  • Branch Management: Create, Switch, Delete.
  • Merging & Conflicts: Fast-forward, 3-Way, Conflict Resolution.
  • Rebase: Linear history maintenance.

Remote Repositories

  • Remotes: Manage remote URLs (origin).
  • Syncing: push, pull, fetch.
  • Workflow: Tracking branches & Pull Requests.

Collaboration & Workflows

  • Workflows: Feature Branch, Gitflow, Trunk-Based.
  • Process: Pull Requests & Code Reviews.
  • Strategy: Monorepo pros/cons.

Undoing & Cleaning

  • Undoing: reset, revert.
  • Restoring: Discard local changes.
  • Utilities: stash, clean.

Advanced Topics

  • Internals: Blobs, Trees, Commits.
  • Power Tools: cherry-pick, reflog, bisect.
  • History: Interactive Rebase, Hooks.

Best Practices

  • Commit Conventions: Conventional Commits, message formatting.
  • Branch Naming: Standard prefixes, team conventions.
  • Atomic Commits: One logical change per commit.
  • Clean History: Interactive rebase, squashing, amending.
  • Code Ownership: git blame, CODEOWNERS file.

Hands-on Projects

Apply your Git knowledge through practical projects:

  1. Personal Portfolio Repo - Professional repository setup with GitHub Pages
  2. Gitflow Workflow - Team collaboration and release management
  3. Git Hooks Automation - Code quality and workflow automation
  4. Open Source Contribution - Fork, PR, and code review process
  5. CI/CD with GitHub Actions - Automated testing and deployment

Interview Preparation

Comprehensive Q&A for technical interviews:

  • Basic Commands - init, clone, add, commit, status, log, fetch, pull, reset
  • Rebase vs Merge - Differences, use cases, conflict resolution
  • Collaboration Workflows - Gitflow, feature branch, trunk-based development
  • Branching & Merging - Fast-forward, 3-way merge, conflict scenarios
  • Debugging - reflog, bisect, recovering lost commits
  • Additional Topics - Internals, stash, cherry-pick, hooks, submodules

Released under the MIT License.