গিটের দুটি শাখা কীভাবে একত্রিত করা যায়

How Merge Two Branches Git



যেকোন গিট রিপোজিটরিতে এক বা একাধিক শাখা থাকে। গিট ব্যবহারকারী বিভিন্ন বিষয়ের উপর ভিত্তি করে ফাইল এবং ফোল্ডার সংরক্ষণের জন্য বিভিন্ন শাখা তৈরি করে। এটি ব্যবহারকারীকে সহজেই কোড পরিচালনা করতে সাহায্য করে। উন্নয়ন প্রক্রিয়ায়, কখনও কখনও প্রকল্পের উদ্দেশ্যে একটি শাখাকে সংগ্রহস্থলের অন্য শাখার সাথে একত্রিত করতে হয়। ` গিট মার্জ `কমান্ড এই কাজের জন্য ব্যবহৃত হয়। এই কমান্ডটি মার্জ করা শাখার দুটি কমিট পয়েন্টার পরীক্ষা করে সাধারণ বেস কমিট কমান্ড খুঁজে বের করে এবং কমান্ডটি চালানোর পরে পরিবর্তনগুলি একত্রিত করার জন্য একটি নতুন মার্জ তৈরি করে। মার্জ কমান্ড চালানোর আগে উভয় স্থানীয় এবং দূরবর্তী সংগ্রহস্থল আপডেট করা প্রয়োজন। স্থানীয়ভাবে দুটি শাখা মার্জ করার উপায় এই টিউটোরিয়ালে দেখানো হয়েছে।

গিট মার্জ অপশন

বিকল্প উদ্দেশ্য
কমিট করুন এটি একীভূত হওয়ার পরে ফলাফল সম্পাদন করতে ব্যবহৃত হয় এবং এটি –no-commit- কে ওভাররাইড করতে ব্যবহার করা যেতে পারে।
-সম্পাদনা, -ই এটি স্বয়ংক্রিয়ভাবে উত্পন্ন একত্রীকরণ বার্তা সম্পাদনা করার জন্য একত্রীকরণের আগে একটি সম্পাদক খুলতে ব্যবহৃত হয়।
–Ff এটি মার্জের দ্রুত সমাধানের জন্য ব্যবহার করা হয়, যার অর্থ হল শাখা পয়েন্টারটি মার্জ করা শাখার সাথে মেলে কিন্তু কোন মার্জ কমিট তৈরি করে না।
–No-ff এটি মার্জের সমস্ত ক্ষেত্রে মার্জ কমিট তৈরি করতে ব্যবহৃত হয়।
–Ff-only এটি সম্ভব হলে দ্রুত-ফরওয়ার্ড হিসাবে মার্জ সমাধান করার জন্য ব্যবহার করা হয় অন্যথায়, মার্জকে প্রত্যাখ্যান করুন এবং একটি শূন্য অবস্থা ছাড়াই প্রস্থান করুন।
-প্রস্থান এটি কমিট বার্তার শেষে কমিটারের দ্বারা সাইন-অফ-লাইন যোগ করতে ব্যবহৃত হয়।
-কোন স্বাক্ষর এটি স্বাক্ষরিত-অফ-লাইন যোগ না করার জন্য ব্যবহৃত হয়।
-অবস্থা এটি মার্জের শেষে একটি ডিফস্ট্যাট প্রদর্শন করতে ব্যবহৃত হয়।
-n, –no-stat এটি মার্জের শেষে ডিফস্ট্যাট প্রদর্শন না করার জন্য ব্যবহৃত হয়।
W ওভাররাইট-এড়িয়ে যান এটি মার্জ ফলাফল থেকে উপেক্ষা করা ফাইলগুলি ওভাররাইট করতে ব্যবহৃত হয়। এটাই স্বাভাবিক ব্যবহার।
- সাহায্য এটি সব মার্জ অপশনে বিস্তারিত তথ্য পেতে ব্যবহৃত হয়।

পূর্বশর্ত

1. গিটহাব ডেস্কটপ ইনস্টল করুন
GitHub ডেস্কটপ git ব্যবহারকারীকে git- সম্পর্কিত কাজগুলো গ্রাফিক্যালি করতে সাহায্য করে। আপনি github.com থেকে উবুন্টুর জন্য এই অ্যাপ্লিকেশনটির সর্বশেষ ইনস্টলারটি সহজেই ডাউনলোড করতে পারেন। এটি ব্যবহার করার জন্য ডাউনলোড করার পরে আপনাকে এই অ্যাপ্লিকেশনটি ইনস্টল এবং কনফিগার করতে হবে। ইনস্টলেশন প্রক্রিয়াটি সঠিকভাবে জানতে আপনি উবুন্টুতে গিটহাব ডেস্কটপ ইনস্টল করার টিউটোরিয়ালটিও পরীক্ষা করতে পারেন।







2. একটি GitHub অ্যাকাউন্ট তৈরি করুন
এই টিউটোরিয়ালে ব্যবহৃত কমান্ডগুলি পরীক্ষা করার জন্য আপনাকে একটি গিটহাব অ্যাকাউন্ট তৈরি করতে হবে।



3. একটি স্থানীয় এবং দূরবর্তী সংগ্রহস্থল তৈরি করুন
স্থানীয় সংগ্রহস্থলের দুটি শাখা একত্রিত করার জন্য ব্যবহৃত কমান্ডগুলি পরীক্ষা করার জন্য আপনাকে দূরবর্তী সার্ভারে প্রকাশিত একাধিক শাখার সাথে একটি স্থানীয় সংগ্রহস্থল ব্যবহার করতে হবে।



একটি স্থানীয় সংগ্রহস্থলের দুটি শাখা একত্রিত করুন

স্থানীয় সংগ্রহস্থলের শাখা তালিকা চেক করতে নিম্নলিখিত কমান্ডটি চালান ফাইল আপলোড করুন





$ git শাখা

নিম্নলিখিত আউটপুট দেখায় যে সংগ্রহস্থলে তিনটি শাখা রয়েছে এবং প্রধান শাখা এখন সক্রিয়।



বিষয়বস্তু এক শাখা থেকে অন্য শাখায় মার্জ করতে নিম্নলিখিত কমান্ডটি চালান। প্রথম চেকআউট কমান্ডটি স্যুইচ করবে মাস্টার শাখা দ্য যোগ করুন কমান্ড যোগ করবে upload4.php সংগ্রহস্থলে ফাইল। দ্য অঙ্গীকার করা কমান্ড কমিট বার্তা যোগ করবে। পরবর্তী, দ্বিতীয় চেকআউট কমান্ডটি স্যুইচ করবে প্রধান শাখা দ্য যাওয়া কমান্ড এর বিষয়বস্তু একত্রিত করবে মাস্টার সঙ্গে শাখা প্রধান শাখা

$ git চেকআউট মাস্টার
$ git upload4.php যোগ করুন
$ git commit -m 'টেক্সট ফাইল আপলোড করুন।'
$ git চেকআউট প্রধান
$ git মার্জ মাস্টার

উপরের কমান্ডগুলি কার্যকর করার পরে নিম্নলিখিত আউটপুট প্রদর্শিত হবে যদি upload4.php ফাইলটি বর্তমান অবস্থানে বিদ্যমান।

যদি মাস্টার বিষয়বস্তুকে মার্জ করার পর রিপোজিটরিতে শাখার অস্তিত্বের প্রয়োজন নেই প্রধান শাখা, তারপর আপনি মুছে ফেলতে পারেন মাস্টার শাখা মুছে ফেলার আগে প্রথম শাখা কমান্ড বিদ্যমান শাখা তালিকা প্রদর্শন করবে। এর সাথে শাখা কমান্ড -ডি অপশনটি মুছে দেবে মাস্টার শাখা শেষ শাখা কমান্ডটি মুছে ফেলার পরে বিদ্যমান শাখা তালিকা প্রদর্শন করবে।

$ git শাখা
$ ls
$ git branch -d মাস্টার
$ ls
$ git শাখা

শাখাটি মুছে ফেলার পরে নিম্নলিখিত আউটপুট প্রদর্শিত হবে।

নামে একটি নতুন শাখা তৈরি করতে নিম্নলিখিত কমান্ডগুলি চালান তাপমাত্রা নামে একটি ফাইল যোগ করুন upload5.php এবং একটি প্রতিশ্রুতি বার্তা দিয়ে কাজটি সম্পাদন করুন। দ্য চেকআউট সঙ্গে কমান্ড -বি বিকল্পটি নতুন শাখা তৈরি করবে। দ্য যোগ করুন কমান্ড রিপোজিটরিতে নতুন ফাইল যোগ করবে। দ্য অঙ্গীকার করা কমান্ড কমিট বার্তার সাথে কাজটি করবে।

$ git checkout -b temp
$ git upload5.php যোগ করুন
$ git commit -m আপলোড ইমেজ ফাইল

উপরের কমান্ডগুলি কার্যকর করার পরে নিম্নলিখিত আউটপুট প্রদর্শিত হবে যদি upload5.php ফাইলটি বর্তমান অবস্থানে বিদ্যমান।

বর্তমান শাখা তালিকা চেক করতে নিম্নলিখিত কমান্ডগুলি চালান, টেম্প শাখার সাথে মার্জ করুন -বন্ধ অপশন, এবং মুছে দিন তাপমাত্রা আর প্রয়োজন না হলে শাখা।

$ git শাখা
$ git merge --no-ff temp
$ git branch -d temp

উপরের কমান্ডগুলি কার্যকর করার পরে নিম্নলিখিত আউটপুট প্রদর্শিত হবে।

যদি থেকে সংগ্রহস্থল খোলা হয় গিটহাব ডেস্কটপ, তারপর নিম্নলিখিত তথ্য প্রদর্শিত হবে। সংগ্রহস্থলের ইতিহাস এই টিউটোরিয়ালের আগের অংশে টার্মিনাল থেকে git কমান্ডগুলি সম্পাদন করে সমস্ত কাজগুলি দেখায়। দুটি কমিট বার্তা এবং দুটি মার্জ অপারেশন ইতিহাসের তালিকায় দেখা যাচ্ছে। এই সমস্ত কাজগুলি শুধুমাত্র স্থানীয় সংগ্রহস্থলে করা হয়েছে। যদি আপনি স্থানীয় সংগ্রহস্থলের নতুন পরিবর্তনের সাথে দূরবর্তী সংগ্রহস্থলের বিষয়বস্তু আপডেট করতে চান, তাহলে এখানে ক্লিক করুন মূল টানুন এর বোতাম গিটহাব ডেস্কটপ

উপসংহার

শাখাগুলিকে মার্জ করা শাখার একটি দরকারী বৈশিষ্ট্য যখন গিট ব্যবহারকারীরা দুটি শাখার বিষয়বস্তু একত্রিত করতে চায়। দুটি নতুন শাখা তৈরি করে বিদ্যমান শাখাগুলিকে একত্রিত করার এবং নতুন শাখা তৈরির মাধ্যমে শাখাগুলিকে একত্রিত করার উপায় এই টিউটোরিয়ালে দেখানো হয়েছে। আপনি যদি টার্মিনালে কমান্ড টাইপ করতে পছন্দ না করেন, তাহলে আপনি সংগ্রহস্থলের দুটি শাখা একত্রিত করতে GitHub ডেস্কটপ অ্যাপ্লিকেশন ব্যবহার করতে পারেন।