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. Merge — branch-এর কাজ একত্র করা
GitIntermediate

Merge — branch-এর কাজ একত্র করা

git merge, fast-forward, three-way merge — বাংলায়।

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

Merge কী?

Merge হলো একটি branch-এর পরিবর্তনগুলোকে অন্য branch-এ আনার প্রক্রিয়া। সাধারণত কাজ শেষ হলে feature থেকে main-এ merge করা হয়।

Merge basicbash
bash
git switch main
git merge feature/contact-page

Fast-forward merge

যদি main branch feature শাখা ছাড়ার পরে কোনো নতুন commit না পায়, তখন Git pointer সরাসরি এগিয়ে নিয়ে যায় — একে fast-forward বলে। নতুন merge commit হয় না।

main ●──●──●
feature      └──●──●
merge → main ●──●──●──●──●   (শুধু pointer সরে যায়)

Three-way merge (merge commit)

যদি মূল branch-ও এগিয়ে গিয়ে থাকে, তখন Git দুটি branch-এর কমন ancestor থেকে দুটি পরিবর্তন আলাদাভাবে দেখে একটি merge commit তৈরি করে।

main ●──●──A──C
feature      └──B
merge → ●──●──A──C──M
                  └──B

Merge conflict হলে

যদি দুটি শাখায় একই ফাইলের একই লাইনে ভিন্ন পরিবর্তন হয়, Git নিজে সিদ্ধান্ত নিতে পারে না — তখন conflict দেখা দেয়। সমাধান নিয়ে পরবর্তী অধ্যায়ে বিস্তারিত।

Merge-এর আগে যা পরীক্ষা করবেন

  • বর্তমান branch-এ কোনো unstaged পরিবর্তন নেই?
  • বিলম্বিত stash? (git stash list)
  • টার্গেট branch-এ নতুন commit আছে?
  • আগে final যোগাযোগ করুন — টিমের নিয়ম অনুযায়ী

Merge দিয়ে না commit করা

git merge --no-ff feature/x   # সবসময় merge commit
git merge --ff-only feature/x  # fast-forward না হলে fail
কখন merge, কখন rebase

branch-এর ইতিহাস preserve করতে চাইলে merge; ইতিহাস linear ও পরিচ্ছন্ন রাখতে চাইলে rebase। public branch-এ কখনো rebase করবেন না।

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

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

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

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

mdanamolhasan1998@gmail.com