Tech TutorBangla Web Documentation
Portfolio
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • Git Documentation21টি অধ্যায়
প্রযুক্তি নির্বাচন
HomeHTMLCSSTailwind CSSJavaScriptTypeScriptReactNext.jsNode.jsExpressSocket.IOExpoWordPressPostgreSQLPrismaPostgresNestJSMongoDBDockerTanStackTanStack TableRTK QueryGitGitHub
  • Introduction
  • Installation
  • Git Basics
  • Staging Area
  • Commit
  • .gitignore
  • Branching
  • Merging
  • Conflicts
  • Rebase
  • Stash
  • Remotes
  • Undoing Changes
  • Diff & Log
  • Tags & Release
  • Debugging
  • Workflows
  • Best Practices
  • Teamwork
  • Project
  • Interview
  1. Docs
  2. Git
  3. Rebase ও Interactive Rebase
GitAdvanced

Rebase ও Interactive Rebase

git rebase কী, কেন ব্যবহার হয়, interactive squash — বাংলায়।

16টি অংশবাংলা ভাষায়

Rebase কী?

Rebase হলো আপনার branch-এর commit গুলো অন্য একটি বেস-এর উপরে সরিয়ে নেওয়া। এটি ইতিহাসকে linear (সরলরেখার মতো) রাখে।

Before / Afterbash
bash
আগে:  main ●──●──A
feature └──●──●
পরে:  main ●──●──A
      feature        └──●──●   (A-এর উপরে বসে গেছে)

রিবেস করা

git switch feature/x
git rebase main

Rebase vs Merge

বিষয়MergeRebase
ইতিহাসbranches + merge commitযদিও linear
ইতিহাস নিরাপত্তাআসল থাকrewrite করে
public branchনিরাপদবিপজ্জনক
যখন ব্যবহারদলগত, main mergeআলাদা feature সাফ করার আগে

Interactive Rebase (সবচেয়ে দরকারি)

git rebase -i HEAD~3
# একটি editor খুলবে — তিনটি commit তালিকাভুক্ত
pick 1a2b3c feat: add login
pick 4d5e6f feat: tweak login
pick 7g8h9i fix: typo

প্রধান অপশন

  • pick — commit রাখুন যেমন আছে
  • reword — message পরিবর্তন করুন
  • edit — commit content পরিবর্তন করুন
  • squash — আগের commit-এ মিলিয়ে নিন
  • fixup — squash কিন্তু message না রেখে
  • drop — commit বাদ দিন

Squash উদাহরণ

# ইতিহাস
pick 1a2b3c feat: add login
squash 4d5e6f tweak: fix style
squash 7g8h9i fix: typo

# Result — একটি clean commit:
# 9x8y7z feat: add login

যেসব ক্ষেত্রে rebase ব্যবহার করা হয়

  • main-এর নতুন commit ডেকে নেওয়া (ফিচার সতেজ রাখা)
  • একাধিক messy commit clean করা (squash)
  • PR merge-এর আগে প্রধান ইতিহাস ক্রমে রাখা
  • font রূপে staged snapshot
Golden Rule

আরও কিছু public branch-এ কখনো rebase নয়। একবার commit push হয়ে গেলে সেটি অন্যের বেস হয়ে গেছে; সেখানে rewrite মানে সবার গণ্ডগোল।

শেষ প্যারায় নিজে practice করুন — কোড কপি করে নিজের এডিটরে চালিয়ে দেখুন।
আগেরMerge Conflict সৃষ্টি ও সমাধানপরেরStash — কাজ সাময়িকভাবে সরিয়ে রাখা
এই পেজে
Tech Tutor

বাংলায় ওয়েব ডেভেলপমেন্ট ডকুমেন্টেশন শিখুন — ধাপে ধাপে।

Homeসব ডকুমেন্টেশনQuick Startআমার নোটস

© 2026 Tech Tutor. বাংলায় শিখুন, বাংলায় গড়ুন।

mdanamolhasan1998@gmail.com