গিট রিফ্লোগ - একীকরণ করা হয়নি এমন একটি মুছে ফেলা শাখাটি কীভাবে পুনরুদ্ধার করবেন

গিট রেফ্লগের এই নিবন্ধটি কীভাবে গিট রেফ্লগের সাহায্যে গিতে মুছে ফেলা ব্রাঞ্চ পুনরুদ্ধার করতে পারে তার একটি বিস্তৃত গাইড।

“আপনি কি কখনও কোনও শাখা হারিয়েছেন, যার উত্স কোডটি এখনও‘ রিলিজ ’শাখায় বা‘ প্রধান ’শাখায় একীভূত হয়নি? আপনি যদি মুছে ফেলা শাখাটির কাজটি ইতিমধ্যে মূল শাখায় একীভূত করাতে চান তবে তা পুনরায় তৈরি করতে চান? ' । ঠিক আছে, এই জাতীয় দৃশ্যের একমাত্র সমাধান রিফ্লগ যান



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



    1. গিট রিফ্লগ কি?
    2. কিভাবে এবং কখন একটি শাখা মুছে ফেলা হয়?
    3. মুছে ফেলা শাখাটি পুনরুদ্ধার করুন
    4. মুছে ফেলা শাখাটি পুনরুদ্ধার করা হলে কোন কাজ পুনরুদ্ধার করা হবে?
    5. গিট রিফ্লগ সাব-কমান্ড

সুতরাং, আসুন এই নিবন্ধটি দিয়ে শুরু করি।



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

ঠিক আছে, আমি এই নিবন্ধটি সরানোর আগে, আমি আপনাকে বলি যে এটি গিটে সম্ভব নয়। সুরক্ষিত এবং একটি চেক পোস্ট হিসাবে কাজ আপনাকে এটি করার অনুমতি দেয় না। সুতরাং, এই যেখানে গিট রেফ্লগ ছবিতে আসে।

গিট রিফ্লগ কি?

দ্য‘রিফ্লগ’ কমান্ডটি রাখে a ্ঝকঝখজ্ঝক্ক রেফারেন্সগুলিতে প্রতিটি একক পরিবর্তন (শাখা বা ট্যাগ) একটি সংগ্রহস্থলের এবং শাখা এবং ট্যাগগুলির লগের ইতিহাস রাখে যা হয় স্থানীয়ভাবে তৈরি হয়েছিল বা চেক আউট হয়েছিল। রেফারেন্স লগগুলি যেমন শাখাটি তৈরি করা হয়েছিল বা ক্লোন করা হয়েছিল, চেক-আউট করা হয়েছিল, নতুন নামকরণ করা হয়েছিল, বা শাখায় করা কোনও কমিট দ্বারা পরিচালিত হয় তার কমিট স্ন্যাপশট এবং ‘রিফ্লগ’ কমান্ড দ্বারা তালিকাভুক্ত।



কিভাবে জাভাতে ডাবল সংখ্যায় রূপান্তর করা যায় to

বিঃদ্রঃ: শাখাটি কেবল তখন আপনার স্থানীয় ডিরেক্টরি থেকে পুনরুদ্ধারযোগ্য হবে যদি শাখাটি কখনও আপনার স্থানীয় সংগ্রহস্থলে থাকে i শাখাটি স্থানীয়ভাবে তৈরি করা হয়েছিল বা গিটের রেফারেন্স ইতিহাসের লগগুলি সঞ্চয় করার জন্য আপনার স্থানীয় সংগ্রহস্থলের দূরবর্তী সংগ্রহস্থল থেকে চেক-আউট করা হয়েছিল।

এই কমান্ডটি হস্তান্তরিত শাখায় থাকা সংগ্রহস্থলে কার্যকর করতে হবে। আপনি যদি বিবেচনাদূরবর্তী সংগ্রহস্থল পরিস্থিতি, তারপরে আপনাকে শাখা থাকা বিকাশকারীদের মেশিনে রিফ্লগ কমান্ড কার্যকর করতে হবে।

আদেশ: রিফ্লগ যান

এখন যে আপনি জানেন, গিট রেফ্লগ কী, আমাদের আসুনএকত্রীকরণ এবং একটি বিযুক্ত না হওয়া শাখা উভয়ই মুছে ফেলার চেষ্টা করুন এবং দেখুন গিট কীভাবে এটি পরিচালনা করে?

পদক্ষেপ 1: মাস্টারগুলিতে মার্জ হওয়া শাখাগুলির তালিকা দিন

প্রথমে, পরীক্ষা করে দেখুন মাস্টার ’শাখা যদি আপনি কমান্ডটি ব্যবহার করে অন্য কোনও শাখায় থাকেন:

it গিট চেকআউট মাস্টার

আউটপুট

গিট চেকআউট মাস্টার - গিট রিফ্লগ - এডুরেকা

এখন, মার্জ করা শাখার একটি তালিকা পেতে, নিম্নলিখিত কমান্ডটি উল্লেখ করুন:

it গিট শাখা - নিমজ্জিত

আউটপুট:

পদক্ষেপ 1.1: তারপরে, মার্জ করা শাখাটি মুছুন:

it গিট শাখা -d সংখ্যা # 902

আউটপুট:

ইস্যুটি ইতিমধ্যে ‘মাস্টার’ শাখায় একীভূত হওয়ায় শাখা ‘ইস্যু # 902’ সাফল্যের সাথে মুছে ফেলা হয়েছে।

পদক্ষেপ 2: এখন, আসুন সেই শাখাগুলি তালিকাবদ্ধ করুন যা মাস্টারগুলিতে মার্জ হয় নি।

it গিট শাখা - না-একত্রিত

আউটপুট

পদক্ষেপ ২.২: পরিশেষে, আসুন নিম্নলিখিত কমান্ডের সাথে একটি মিশ্রিত শাখা মুছুন:

it গিট শাখা-ডি প্রিপড

আপনি যদি সমাপ্ত কাজ না করে একটি শাখা মুছে ফেলার চেষ্টা করেন তবে 'প্রিপ্রড' শাখা বলুন, গিট একটি সতর্কতা বার্তা প্রদর্শন করে।

আউটপুট

এখন, আমি কীভাবে আপনি গিট রিফ্লগের এই নিবন্ধটি পুনরুদ্ধার করতে পারেন তা বলার আগে, আমি আপনাকে একটি শাখাটি মুছে ফেলা হবে এবং কোন পরিস্থিতিতে শাখাটি পুনরুদ্ধার করা যেতে পারে তা ঠিক আপনাকে বলি।

কিভাবে এবং কখন একটি শাখা মুছে ফেলা হয়?

যেমনটি আমরা জানি যে গিট একটি বিতরণ সংস্করণ নিয়ন্ত্রণ সিস্টেম (ডিভিসিএস), ক্লোন সহ প্রতিটি মেশিন বা সংগ্রহশালার অনুলিপি উভয় হিসাবে কাজ করে নোড এবং ক হাব । এইবোঝায় যে প্রতিটি মেশিনের সম্পূর্ণ সংগ্রহস্থল কোড এবং ইতিহাসের নিজস্ব অনুলিপি থাকবে।বলা বাহুল্য আপনি হবেন ভাগ করে নেওয়া অন্যের সাথে আপনার কাজ এবং প্রকাশনা একই.

অতএব, এই জাতীয় পরিস্থিতিতে, একটি বড় প্রকল্পে অনেক অবদানকারী কাজ করে যখন একটি শাখা বাস্তব-বিশ্বের দৃশ্যে মুছে ফেলা হয় তখন cases টি ঘটনা ঘটতে পারে। নিম্নলিখিত ক্ষেত্রে হতে পারে:

কেস 1 - একজন বিকাশকারী হয় হয় শাখাটি মার্জ করে বা মুছতে পারে

এমন একটি দৃশ্যের কথা বিবেচনা করুন যেখানে কোনও বিকাশকারী স্থানীয়ভাবে প্রধান শাখায় বৈশিষ্ট্য শাখাটি মার্জ করে এবং তারপরে ‘ব্যবহার করে বৈশিষ্ট্য শাখাটি মুছে দেয় Consider গিট শাখা '- এর সাথে আদেশ দিন d ”আগের স্ক্রিনশটগুলিতে দেখা হিসাবে পতাকা।

আদেশ: ‘গিট শাখা-শাখা_নাম '

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

আদেশ: ‘গিট শাখা -D শাখা_নাম’

উপরের কমান্ডের সাথে, বিকাশকারী হলেনগিট সতর্কতা ওভাররাইড করে শাখাটি জোর করে মুছে ফেলুন

it গিট শাখা -ডি প্রিপ্রড

আউটপুট

বিঃদ্রঃ : আপনি ‘গিট শাখা’ কমান্ডটি চালানোর সময় ‘প্রিপ্রড’ শাখা আর তালিকাভুক্ত হবে না। সুতরাং, yএই শাখায় আমাদের কাজ সংরক্ষিত হবে।

কেস 2 - একজন বিকাশকারী একটি ভাগ করা সংগ্রহস্থলের একটি শাখা মুছে ফেলেন

একটি দৃশ্যের কথা বিবেচনা করুন, যেখানে পড়ার / লেখার অ্যাক্সেস সহ কোনও বিকাশকারীরা দূরবর্তী শাখাকে জোর করে মুছে ফেলার চেষ্টা করে‘leteডিলিট’ পতাকা সহ ‘গিট পুশ’ কমান্ডটি ব্যবহার করে।

it গিট পুশ অরিজিন - কুইকফিক্স ডিলিট

আউটপুট

জাভা পদ্ধতি থেকে বিরতি

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

যদি রক্ষণাবেক্ষণকারীটি শাখাটি পুনরুদ্ধার করতে না পারে, তবে যে শাখার মালিক এটি মুছে ফেলেছে তাকে অবশ্যই তার স্থানীয় রিফ্লাগগুলি থেকে পুনরুদ্ধার করতে হবে।

কেস 3 - সুপার সুবিধা সহ একটি হুক স্ক্রিপ্ট শাখাটি মোছা

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

এখন, যখন আপনি কীভাবে জানেন যে আপনি যখন শাখাটি মুছে ফেলেন, আসুন গিট রেফ্লগের এই নিবন্ধটি নিয়ে এগিয়ে চলুন এবং দেখুন কীভাবে একটি হারিয়ে যাওয়া শাখা পুনরুদ্ধার করবেন।

গিট রিফ্লগ ব্যবহার করে মুছে ফেলা শাখাটি পুনরুদ্ধার করুন

ধাপ 1 : সমস্ত উল্লেখের ইতিহাস লগ

এই সংগ্রহস্থলে সমস্ত রেফারেন্সের জন্য স্থানীয় 'রেকর্ডকৃত ইতিহাস লগগুলির একটি তালিকা পান (' মাস্টার ',' ইউট 'এবং' প্রিপড ')।

রিফ্লগ যান

ধাপ ২ : ইতিহাসের ডাকটিকিট শনাক্ত করুন

আপনি উপরের স্ন্যাপশট থেকে উল্লেখ করতে পারেন, হাইলাইট কমিট আইডি: e2225bb হেড পয়েন্টার সূচক সহ: 4 এক যখন ' পুনরায় বিক্রয় ’শাখাটি আপনার সর্বশেষ কাজের প্রতি ইঙ্গিত করে বর্তমান হেড পয়েন্টার থেকে তৈরি করা হয়েছিল।

ধাপ 3 : পুনরুদ্ধার

ফিরে ফিরে ‘পুনরায় বিক্রয় ‘শাখা কমান্ডটি ব্যবহার করুন‘গিট চেকআউট’ সূচক আইডি - 4 দিয়ে হেড পয়েন্টার রেফারেন্সটি পাস করে।আউটপুট স্ক্রিনশটটিতে হাইলাইট করা দীর্ঘ প্রতিশ্রুতি আইডি তৈরি করা হলে এটিই পয়েন্টার রেফারেন্স।

গিট চেকআউট-বি প্রিপ্রড হেড @ {4}

আউটপুট

ও ভয়েলা! ‘ পুনরায় বিক্রয় ‘শাখাটি আপনার উত্স কোডের সমস্ত দিয়েই পুনরুদ্ধার করা হয়েছে।

বিঃদ্রঃ : আমাকে খউপরে ব্যবহৃত ‘গিট চেকআউট’ কমান্ডটি পুনরায় গ্রহণ করুন এবং আপনাকে আরও ভালভাবে বুঝতে সহায়তা করুন:

‘গিট চেকআউট’ কমান্ডটি একটি অতিরিক্ত-লোড কমান্ড (ঠিক যে কোনও জাভা ওভারলোডেড ফাংশনের মতো)। এটি সেই অংশ যেখানে আসল শাখাটি পুনরুদ্ধার করা।

এই একক কমান্ড প্রথম দ্বারা চিহ্নিত পূর্ববর্তী ইতিহাস টাইমস্ট্যাম্পটি পরীক্ষা করে হেড @ {4} পয়েন্টার এবং তারপরে '-প্র' বিকল্পটি ব্যবহার করে ‘প্রিপ্রড’ নামের একটি শাখা তৈরি করে সেই সাথে আপনার কার্য-ডিরেক্টরিটি নতুন তৈরি শাখায় স্যুইচ করে।

এর দ্বারা বোঝা যায় যে শাখাটি স্যুইচ করা আউটপুট স্ক্রিনে নির্দেশিত হিসাবে 'মাস্টার' থেকে 'প্রিপ্রড' পর্যন্ত থাকবে।আপনি এখন আপনার ব্রাঞ্চিং মডেল অনুযায়ী এটি ‘মাস্টার’ বা ‘রিলিজ’ শাখায় মার্জ করতে পারবেন।

এখন, যেহেতু আপনি একটি শাখা পুনরুদ্ধার করতে জানেন, আমাকে একটি মুছে ফেলা শাখা পুনরুদ্ধার করা হলে কী কাজ পুনরুদ্ধার করা হয় তা আপনাকে বলি।

সাজানো সি ++ উত্স কোড

মুছে ফেলা শাখাটি পুনরুদ্ধার করা হলে কোন কাজ পুনরুদ্ধার করা হবে?

স্ট্যাশ সূচক তালিকায় স্ট্যাশ করা এবং সংরক্ষণ করা ফাইলগুলি পুনরুদ্ধার করা হবে। যেকোন আনক্র্যাকড ফাইল হারিয়ে যাবে। আমিওটি সর্বদা আপনার কাজ মঞ্চায়িত করা এবং তাদের প্রতিশ্রুতিবদ্ধ বা সেগুলিকে সংযুক্ত করা ভাল ধারণা।

কোনও নির্দিষ্ট শাখার লগ রেফারেন্স আনতে বা ট্যাগটি কমান্ডটি চালান - 'গিট রিফ্লগ'।

উদাহরণ: ‘uat’ শাখার লগ রেফারেন্সগুলি পরীক্ষা করতে একা কমান্ডটি ব্যবহার করুন - 'গিট রেফ্লগ uat'।

গিট রিফ্লগ সাব-কমান্ড

রিফ্লগ যান

ম্যানুয়াল পৃষ্ঠাটি খোলার আদেশ Command

it গিট রিফ্লোগ - সাহায্য

আউটপুট

রিফ্লগ যান দেখান

কমান্ড লাইনে প্রদত্ত রেফারেন্সের লগগুলি দেখায়।

গিট রিফ্লগ শো মাস্টার @ {0}

রিফ্লগ যান মেয়াদ শেষ

এই কমান্ডটি পুরানো রিফ্লগ এন্ট্রিগুলিকে ছাঁটাই করতে ব্যবহৃত হয়।

গিট রিফ্লগের মেয়াদ শেষ

রিফ্লগ যান মুছে ফেলা

এই কমান্ডটি রিফ্লগের ইতিহাস থেকে একক এন্ট্রি মুছে দেয়।

গিট রিফ্লগ মুছুন

রিফ্লগ যান বিদ্যমান

এই কমান্ডটি একটি রেফ (শাখা বা ট্যাগ) এর একটি রিফ্লগ আছে কিনা তা পরীক্ষা করে দেখায় - লগ ইতিহাসের এন্ট্রিগুলি।

গিট রিফ্লগ বিদ্যমান

উপরে বর্ণিত কমান্ডগুলি ছাড়াও, 'গিট রিফ্লগ' কমান্ড বিভিন্ন সাবকম্যান্ড এবং উপরে উল্লিখিত সাবকম্যান্ডগুলির উপর নির্ভর করে বিভিন্ন বিকল্প গ্রহণ করে। আরও পড়ার জন্য রান করুন “ গিট রিফ্লগ টার্মিনাল উইন্ডো থেকে।

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

আমাদের জন্য একটি প্রশ্ন আছে? দয়া করে এটি 'গিট রিফ্লগ' নিবন্ধের মন্তব্য বিভাগে উল্লেখ করুন এবং আমরা আপনাকে ASAP এ ফিরিয়ে দেব।