Git হল একটি version control system যা কোডের ইতিহাস ট্র্যাক করতে এবং একাধিক ডেভেলপারদের মধ্যে কোডের বিভিন্ন ভার্সন ম্যানেজ করতে সাহায্য করে। Branching এবং Merging Git-এর দুটি গুরুত্বপূর্ণ ধারণা, যা আপনাকে কোডের বিভিন্ন ভার্সন এবং ফিচার ডেভেলপমেন্ট পরিচালনা করতে সহায়তা করে।
Eclipse IDE তে Git ব্যবহার করার মাধ্যমে Branching এবং Merging খুবই সহজ এবং কার্যকরী। EGit হল Eclipse-এ Git ব্যবহারের জন্য একটি প্লাগইন যা Git রেপোজিটরি ম্যানেজমেন্ট এবং অন্যান্য Git অপারেশন সম্পাদন করতে সাহায্য করে।
এখানে Eclipse তে Git Branching এবং Merging এর ব্যবহার এবং তাদের কাজ করার প্রক্রিয়া নিয়ে বিস্তারিত আলোচনা করা হলো।
১. Git Branching:
Git Branching আপনাকে বিভিন্ন ফিচার বা কাজের জন্য আলাদা আলাদা শাখা (branch) তৈরি করতে সহায়তা করে। প্রতিটি ব্রাঞ্চে আপনি স্বাধীনভাবে কোড লিখতে এবং পরীক্ষণ করতে পারেন, এবং পরবর্তীতে মূল শাখার (main branch) সঙ্গে সেই পরিবর্তন মার্জ (merge) করতে পারেন।
Branch তৈরি করা:
- Eclipse IDE তে Git ব্রাঞ্চ তৈরি করতে:
- Git Repositories View ওপেন করুন:
Window>Show View>Git Repositories - আপনার রেপোজিটরি সিলেক্ট করুন।
- রাইট-ক্লিক করুন এবং
Switch To>New Branchসিলেক্ট করুন।
- Git Repositories View ওপেন করুন:
- নতুন ব্রাঞ্চের নাম দিন:
- নতুন ব্রাঞ্চের নাম যেমন:
feature-branch,bug-fix-branchবা অন্য কিছু দিন। - Start Point সিলেক্ট করুন, যেমন আপনি যে শাখা থেকে ব্রাঞ্চ তৈরি করতে চান (যেমন
mainবাmasterব্রাঞ্চ থেকে)।
- নতুন ব্রাঞ্চের নাম যেমন:
- Create বাটন ক্লিক করুন:
- এখন আপনি নতুন ব্রাঞ্চ তৈরি করেছেন এবং এটি আপনার বর্তমান কাজের ব্রাঞ্চ হয়ে উঠবে।
Branch স্যুইচ করা:
- Switch to Branch করতে:
- Git Repositories View তে, ব্রাঞ্চের নামের উপর রাইট-ক্লিক করুন এবং
Checkoutঅপশন সিলেক্ট করুন। - এখন আপনি নতুন ব্রাঞ্চে কাজ করতে পারবেন।
- Git Repositories View তে, ব্রাঞ্চের নামের উপর রাইট-ক্লিক করুন এবং
২. Git Merging:
Git Merging হল দুটি ব্রাঞ্চের মধ্যে কোড একত্রিত করার প্রক্রিয়া। যখন আপনি একটি নতুন ফিচার বা ফিক্সের জন্য একটি নতুন ব্রাঞ্চে কাজ শেষ করেন, তখন আপনি সেই পরিবর্তনগুলো মূল ব্রাঞ্চের (যেমন main বা master) সঙ্গে মার্জ (merge) করেন।
Branch মর্জ (Merge) করা:
- Git Repositories View তে, সেক্ষেত্রে আপনি যে ব্রাঞ্চে মার্জ করতে চান (যেমন
mainবাmaster) সেটি সিলেক্ট করুন। - রাইট-ক্লিক করুন এবং
Mergeসিলেক্ট করুন। - Select Source Branch থেকে যেই ব্রাঞ্চ মার্জ করতে চান (যেমন
feature-branch) সেটি সিলেক্ট করুন। - Merge বাটনে ক্লিক করুন।
Merge Conflict:
যদি দুটি ব্রাঞ্চে একসাথে একই জায়গায় পরিবর্তন হয়ে থাকে, তবে Git মর্জ করার সময় একটি Merge Conflict হতে পারে। এটি হ্যান্ডেল করার জন্য Eclipse এ আপনাকে একটি কনফ্লিক্ট রেসলিউশন ইন্টারফেস দেয়া হয়, যেখানে আপনি ম্যানুয়ালি নির্ধারণ করতে পারেন কোন পরিবর্তন রাখতে হবে।
Merge Conflict Resolution:
- যদি কোন কনফ্লিক্ট থাকে, Eclipse আপনাকে একটি ডায়ালগ দেখাবে, যেখানে আপনি বিভিন্ন পরিবর্তন দেখে সঠিকটি সিলেক্ট করতে পারেন।
- আপনি Accept Incoming, Accept Current, বা Manual Edit করতে পারেন।
একবার কনফ্লিক্ট রেজোল্ভ হয়ে গেলে, Commit করতে হবে।
Commit Changes:
- মর্জ করার পর, আপনি যে পরিবর্তনগুলো করেছেন তা Commit করতে হবে। Eclipse এ Team > Commit এ গিয়ে আপনি পরিবর্তনগুলি কমিট করতে পারেন।
৩. Eclipse তে Git Branching এবং Merging এর কাজ করার একটি উদাহরণ:
ধরা যাক, আপনি একটি Java প্রজেক্টে কাজ করছেন এবং আপনার ফিচার ডেভেলপমেন্টের জন্য একটি নতুন ব্রাঞ্চ তৈরি করতে চান।
Step 1: New Feature Branch তৈরি করা
- আপনার প্রজেক্ট ওপেন করুন।
Git Repositoriesভিউ তে যান এবং রেপোজিটরি সিলেক্ট করুন।- রাইট-ক্লিক করুন এবং Switch To > New Branch সিলেক্ট করুন।
- নতুন ব্রাঞ্চের নাম দিন (যেমন
feature-xyz), এবংCreateবাটনে ক্লিক করুন।
Step 2: Feature ব্রাঞ্চে কাজ করা
এখন আপনি নতুন ব্রাঞ্চে কাজ করতে পারবেন। কোড পরিবর্তন করুন, ফিচার ডেভেলপ করুন এবং প্রয়োজনে টেস্টিং করুন।
Step 3: Main ব্রাঞ্চে মর্জ করা
- যখন আপনার ফিচার ডেভেলপমেন্ট সম্পন্ন হয়, তখন main ব্রাঞ্চে ফিরে যেতে হবে:
- Git Repositories View তে,
mainব্রাঞ্চ সিলেক্ট করুন এবংCheckoutকরুন।
- Git Repositories View তে,
- Merge Feature Branch into Main:
- রাইট-ক্লিক করুন এবং Merge সিলেক্ট করুন।
feature-xyzব্রাঞ্চ সিলেক্ট করুন এবং Merge বাটনে ক্লিক করুন।- যদি কোনো কনফ্লিক্ট থাকে, তাহলে কনফ্লিক্ট রেজোলভ করুন এবং পরিবর্তন কমিট করুন।
৪. Git Branching এবং Merging এর টিপস:
- Branch Naming Convention:
- আপনার ব্রাঞ্চের জন্য উপযুক্ত নামকরণ কৌশল ব্যবহার করুন (যেমন,
feature/xyz,bugfix/123,hotfix/xyz) যাতে টিমের সকল সদস্য বুঝতে পারে ব্রাঞ্চটির উদ্দেশ্য।
- আপনার ব্রাঞ্চের জন্য উপযুক্ত নামকরণ কৌশল ব্যবহার করুন (যেমন,
- Commit Often:
- কোডে ছোট ছোট পরিবর্তন করে বার বার কমিট করুন, যাতে আপনার টিমের অন্য সদস্যরা সহজে আপনার পরিবর্তনগুলো দেখতে পায়।
- Merge Frequently:
- আপনার ব্রাঞ্চগুলো নিয়মিতভাবে মূল ব্রাঞ্চের সাথে মর্জ করুন, যাতে বড় বড় কনফ্লিক্টের সৃষ্টি না হয়।
- Rebase Instead of Merge:
- কখনও কখনও আপনি rebase ব্যবহার করতে পারেন মর্জের পরিবর্তে, যা ব্রাঞ্চের ইতিহাস পরিষ্কার রাখে এবং সহজভাবে ফিচারগুলি মূল ব্রাঞ্চে মর্জ করতে সাহায্য করে।
সারাংশ:
Eclipse তে Git Branching এবং Merging একটি কার্যকরী এবং গুরুত্বপূর্ণ অংশ। Branching আপনাকে আপনার কোডকে বিভিন্ন ফিচার বা ফিক্সের জন্য আলাদা রাখতে সাহায্য করে, এবং Merging আপনাকে এসব পরিবর্তনগুলোর মধ্যে একত্রিত করার সুযোগ দেয়। Eclipse IDE তে EGit প্লাগইন এর মাধ্যমে সহজে ব্রাঞ্চ তৈরি এবং মার্জ করা যায়, এবং এতে আপনি কোডের ইতিহাস পরিষ্কারভাবে ম্যানেজ করতে পারেন। Merge conflicts আসলে একটু জটিল হতে পারে, তবে Eclipse এর মধ্যে এর সমাধান পাওয়া সহজ, এবং কোডের অখণ্ডতা বজায় রাখা সম্ভব।
Read more