কম্পিউটার টিউটোরিয়াল

Git: সব ব্রাঞ্চ একসাথে 풀 (Pull) করা — fetch --all এবং pull --all

গিট ব্রাঞ্চিং কী?

ব্রাঞ্চ (Branch) হলো ডেভেলপমেন্টের আলাদা লাইন। উদাহরণ: main (প্রোডাকশন), dev (ডেভেলপমেন্ট), feature/login (নতুন ফিচার)। রিমোট রিপোজিটরিতে একাধিক ব্রাঞ্চ থাকতে পারে।

git fetch --all: সব ব্রাঞ্চের মেটাডেটা আনুন

git fetch --all সব রিমোট ব্রাঞ্চের কমিট মেটাডেটা লোকালে ডাউনলোড করে, কিন্তু **ওয়ার্কিং ফাইলগুলো পরিবর্তন করে না**।

git fetch --all
# আউটপুট উদাহরণ:
# Fetching origin
# From https://github.com/user/repo
#  3fcea0c..da74d68  dev       -> origin/dev

এটি নিরাপদে রিমোটের অবস্থা জানার উপায়।

git pull --all: সব ব্রাঞ্চ মার্জ/আপডেট করুন

git pull --all = git fetch --all + প্রতিটি ট্র্যাকিং ব্রাঞ্চ মার্জ। এটি লোকাল ব্রাঞ্চগুলো আপডেট করে।

git pull --all
# আউটপুট:
# Fetching origin
# Updating 3fcea0c..da74d68
# Fast-forward
#  README.md | 1 +

সিঙ্গেল ব্রাঞ্চের জন্য কমান্ড

  • মেটাডেটা: git fetch origin
  • পুল/মার্জ: git pull origin

ট্র্যাকিং ব্রাঞ্চ সেটআপ

লোকাল ব্রাঞ্চকে রিমোট ব্রাঞ্চের সাথে ট্র্যাক করাতে:

git branch --track dev origin/dev
# অথবা চেকআউট করার সময়
git checkout --track origin/dev

সাধারণ ওয়ার্কফ্লো

# ১. সব রিমোট আপডেট জানুন
git fetch --all

# ২. কী কী বদলেছে দেখুন
git log origin/main..HEAD   # লোকালে আছে রিমোটে নেই
git log HEAD..origin/main   # রিমোটে আছে লোকালে নেই

# ৩. প্রয়োজনীয় ব্রাঞ্চ পুল করুন
git pull origin main
# অথবা সব ব্রাঞ্চ
git pull --all

নিষ্কর্ষ

  • git fetch --all — নিরাপদে রিমোটের স্ন্যাপশট নিন (কোনো মার্জ নেই)।
  • git pull --all — সব ট্র্যাকিং ব্রাঞ্চ আপডেট করুন (মার্জ হবে)।
  • টিম ওয়ার্কে fetch আগে, রিভিউ করুন, তারপর pull করুন — সেরা অনুশীলন।
  1. Git Commit: কমিট তৈরি এবং ম্যানেজমেন্ট গাইড

  2. Git Cannot open .git/FETCH_HEAD: Permission denied সমাধান

  3. Git Detached HEAD: কারণ এবং সমাধান

  4. Git Reset: কমিট রিয়ার্ন করার টুল