গিটের একটি শাখা থেকে অন্য শাখায় পরিবর্তনগুলি কীভাবে টানবেন

How Pull Changes From One Branch Another Git



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

পূর্বশর্ত

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







2. একটি GitHub অ্যাকাউন্ট তৈরি করুন
স্থানীয় সংগ্রহস্থলের পরিবর্তন প্রকাশের পর দূরবর্তী সংগ্রহস্থলের চেহারা পরীক্ষা করার জন্য আপনাকে একটি গিটহাব অ্যাকাউন্ট তৈরি করতে হবে।



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



স্ট্যাশ কমান্ড ব্যবহার

স্থানীয় ভাণ্ডারের নাম PHP2 এই টিউটোরিয়ালে ব্যবহার করা হয়েছে কিভাবে একটি শাখা থেকে রিপোজিটরির অন্য শাখায় পরিবর্তন টানতে হয়। নামে একটি ফাইল তৈরি করুন index.html সংগ্রহস্থলে। টার্মিনাল খুলুন এবং সংগ্রহস্থল ফোল্ডারে যান। শাখা তালিকা চেক করার জন্য নিম্নলিখিত কমান্ডগুলি চালান, মাস্টার শাখায় যান এবং শাখার অবস্থা প্রদর্শন করুন।





$ git শাখা
$ git চেকআউট মাস্টার
$ git স্ট্যাটাস

উপরের কমান্ডটি চালানোর পরে নিম্নলিখিত আউটপুটটি উপস্থিত হবে। আউটপুট দেখায় যে সংগ্রহস্থলে দুটি শাখা রয়েছে, এবং প্রধান শাখাটি প্রথমে সক্রিয় ছিল। এ স্যুইচ করার পর মাস্টার শাখা, স্থিতির আউটপুট দেখায় যে বর্তমান শাখা সক্রিয় এবং index.html ফাইলটি ট্র্যাক করা হয়নি।



ট্র্যাক করা ফাইলটি ট্র্যাক করার জন্য নিম্নলিখিত কমান্ডগুলি চালান এবং আবার গিট রিপোজিটরির অবস্থা পরীক্ষা করুন।

$ git index.html যোগ করুন
$ git স্ট্যাটাস

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

নিম্নলিখিত কমান্ডগুলি চালান এবং আবার গিট রিপোজিটরির অবস্থা পরীক্ষা করুন। `git stash` কমান্ড` git commit` কমান্ডের মত কাজ করে। এই কমান্ডটি কার্যকর করার পরে রিপোজিটরির কার্যকরী ডিরেক্টরি পরিষ্কার করা হবে।

$ git stash
$ git স্ট্যাটাস

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

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

$ git চেকআউট প্রধান
$ git stash পপ

উপরের কমান্ডটি কার্যকর করার পরে নিম্নলিখিত আউটপুটটি প্রদর্শিত হবে যা দেখায় যে বর্তমান শাখাটি প্রধান এবং index.html এই শাখায় ফাইল যোগ করা হয়েছে।

কমিট মেসেজ দিয়ে আগের টাস্কটি করার জন্য নিচের কমান্ডটি চালান এবং আবার স্ট্যাটাস চেক করুন।

$ git commit -m 'index file added'
$ git স্ট্যাটাস

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

যদি স্থানীয় সংগ্রহস্থলের পরিবর্তনগুলি দূরবর্তী সংগ্রহস্থলে ঠেলে দেওয়া হয়, এবং github.com থেকে দূরবর্তী সংগ্রহস্থলটি খোলা হয়, তাহলে সংগ্রহস্থলটিকে নিচের চিত্রের মতো দেখাবে।

মার্জ কমান্ড ব্যবহার

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

$ git শাখা
$ git চেকআউট মাস্টার
$ git স্ট্যাটাস
$ git read.php যোগ করুন
$ git commit -m 'স্ক্রিপ্ট যোগ করা হয়েছে'

উপরের কমান্ডগুলি কার্যকর করার পরে নিম্নলিখিত আউটপুট প্রদর্শিত হবে। Read.php ফাইলটি সংগ্রহস্থলের মাস্টার শাখায় যুক্ত করা হয়েছে এবং কাজটিও করা হয়েছে।

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

উপসংহার

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