কখনও কখনও, উন্নয়নের সময় একাধিক ভুল ঘটে, যেমন অনিচ্ছাকৃতভাবে প্রতিশ্রুতিতে সংবেদনশীল তথ্য যোগ করা, অসমাপ্ত কাজ করা বা বাগগুলি প্রবর্তন করা। পরিবর্তনগুলি ফিরিয়ে আনা এবং গিট লগ ইতিহাস পুনঃলিখন করা গিট ব্যবহারকারীদের এই ভুলগুলি ঠিক করতে এবং একটি পরিষ্কার এবং সঠিক কোডবেস নিশ্চিত করার অনুমতি দেয়।
এই গাইডে, আমরা আলোচনা করব:
- গিটে 'গিট রিভার্ট' কমান্ড
- গিটে 'গিট রিবেস' কমান্ড
- গিটে 'গিট রিভার্ট' এবং 'গিট রিবেস' এর মধ্যে পার্থক্য কী?
গিটে 'গিট রিভার্ট' কমান্ড
দ্য ' git রিভার্ট ” কমান্ডটি নতুন কমিট তৈরি করার জন্য ব্যবহার করা হয় যা পূর্ববর্তী কমিটে যোগ করা পরিবর্তনগুলিকে ফিরিয়ে দেয়। সহজ কথায়, রিসেট কমান্ড কার্যকর করার পরে যে পরিবর্তনগুলি ঘটে তা বাতিল করার জন্য এটি ব্যবহার করা হয়। অতিরিক্তভাবে, এটি বিদ্যমান ডেটা সরিয়ে দেয় না তবে শুধুমাত্র শেষে একটি নতুন প্রতিশ্রুতি যোগ করে যা স্থানীয় সংগ্রহস্থলের পরিবর্তনগুলি বাতিল করে।
আসুন উপরে বর্ণিত কমান্ডের ব্যবহারিক প্রদর্শনগুলি পরীক্ষা করে দেখি!
ধাপ 1: স্থানীয় সংগ্রহস্থলে পুনর্নির্দেশ করুন
প্রাথমিকভাবে, চালান ' সিডি 'কাঙ্খিত সংগ্রহস্থল পাথ সহ কমান্ড এবং এটিতে নেভিগেট করুন:
cd 'C:\Users\nazma\Git\Git\Demo1'
ধাপ 2: ফাইল তৈরি করুন এবং যোগ করুন
তারপর, 'এর মাধ্যমে একটি নতুন ফাইল তৈরি করুন প্রতিধ্বনি ' কমান্ড এবং ' ব্যবহার করে এটি ট্র্যাক করুন git যোগ করুন 'আদেশ:
echo 'my new file' >> file8.txt && git add file8.txt
ধাপ 3: স্থিতি পরীক্ষা করুন
এরপর, 'গিট স্ট্যাটাস' কমান্ডটি কার্যকর করার মাধ্যমে বর্তমান কার্যকারী ডিরেক্টরির অবস্থা প্রদর্শন করুন:
git অবস্থানিম্নলিখিত আউটপুট অনুযায়ী, নতুন ফাইল সফলভাবে ট্র্যাক করা হয়েছে:
ধাপ 4: পরিবর্তনগুলি সংরক্ষণ করুন
ট্র্যাক করা পরিবর্তনগুলি সংরক্ষণ করতে, কমিট বার্তা সহ নিম্নলিখিত কমান্ডটি ব্যবহার করুন:
git commit -m 'file8.txt যোগ করা হয়েছে'
ধাপ 5: গিট লগ ইতিহাস দেখুন
'গিট লগ' কমান্ডটি চালান ' -এক লাইন ' একটি একক লাইনে প্রতিটি কমিট দেখানোর জন্য পতাকা:
git log --onelineনীচের প্রদত্ত আউটপুট নির্দেশ করে যে সমস্ত কমিট সফলভাবে তালিকাভুক্ত করা হয়েছে। আমরা নির্বাচন করেছি ' 939d65b আরও ব্যবহারের জন্য SHA-হ্যাশ:
ধাপ 6: পরিবর্তনগুলি প্রত্যাবর্তন করুন
এর পরে, ব্যবহার করুন ' git রিভার্ট ' পূর্বে নির্বাচিত কমিট সহ কমান্ডটি আমি পরিবর্তনগুলি পূর্বাবস্থায় ফিরিয়ে আনতে চাই:
গিট রিভার্ট হেডউপরের কমান্ডটি কার্যকর করার পরে:
- ' COMMIT_EDITMSG ” ফাইলটি ডিফল্ট এডিটর দিয়ে খুলবে।
- অপারেশন প্রত্যাবর্তনের জন্য প্রতিশ্রুতি বার্তা যোগ করুন।
- চাপুন ' CTRL+S পরিবর্তনগুলি সংরক্ষণ এবং এটি বন্ধ করতে কীগুলি:
নীচের প্রদত্ত আউটপুট অনুযায়ী, আমরা সফলভাবে নির্দিষ্ট প্রতিশ্রুতি ফিরিয়ে দিয়েছি:
ধাপ 7: যাচাইকরণ
প্রত্যাবর্তিত পরিবর্তনগুলি যাচাই করতে, নিম্নলিখিত কমান্ডটি চালান:
git log --onelineএটি লক্ষ্য করা যায় যে পরিবর্তনগুলি একটি নতুন কমিট হ্যাশ-এ সফলভাবে প্রত্যাবর্তন করা হয়েছে:
গিটে 'গিট রিবেস' কমান্ড
দ্য ' git রিবেস ” কমান্ডটি একাধিক কমিটকে একত্রিত বা একত্রিত করার জন্য একটি রৈখিক অনুক্রমের মধ্যে পরিবর্তন, এবং নতুন বেসে সরানোর জন্য ব্যবহৃত হয়। এটি ব্যবহারকারীদের সর্বশেষ পরিবর্তনগুলিকে একীভূত করতে এবং একটি স্থানীয় শাখা থেকে অন্য শাখায় স্থানান্তর করতে দেয়৷ অতিরিক্তভাবে, এটি অন্য পুনঃস্থাপিত শাখার উপরে কমিটের ইতিহাস পুনর্লিখন করে।
এখন, আরও ভালোভাবে বোঝার জন্য নিচের পদ্ধতিটি দেখুন!
ধাপ 1: শাখা তালিকাভুক্ত করুন
প্রথমত, 'চালনা করুন' git শাখা 'সকল স্থানীয় শাখা দেখতে কমান্ড:
git শাখাপ্রদত্ত আউটপুট থেকে, আমরা নির্বাচন করেছি ' বৈশিষ্ট্য আরও ব্যবহারের জন্য শাখা:
ধাপ 2: শাখা পরিবর্তন করুন
একটি কার্যকারী শাখা থেকে অন্য শাখায় চেক আউট করতে, নিম্নলিখিত কমান্ডটি চালান:
git চেকআউট বৈশিষ্ট্য
ধাপ 3: রিবেস শাখা
ব্যবহার ' git রিবেস স্থানীয় শাখার নাম দিয়ে এটি যুক্ত করতে কমান্ড দিন:
গিট রিবেস মাস্টার
ধাপ 4: লগ ইতিহাস প্রদর্শন করুন
পুনর্নির্ধারিত পরিবর্তনগুলি যাচাই করতে, 'চালান git log' কমান্ডটি '-oneline সহ 'বিকল্প:
git log --oneline
গিটে 'গিট রিভার্ট' এবং 'গিট রিবেস' এর মধ্যে পার্থক্য কী?
মধ্যে পার্থক্য ' git রিভার্ট 'আদেশ এবং ' git রিবেস ' কমান্ডটি নিম্নলিখিত টেবিলে তালিকাভুক্ত করা হয়েছে: এটাই! আমরা ব্যাখ্যা করেছি ' git rebase' এবং 'git revert 'গিটে কমান্ড।
উপসংহার
দ্য ' git রিভার্ট ' এবং ' git রিবেস ” দুটি ভিন্ন কমান্ড যা সংস্করণের ইতিহাস পরিচালনা এবং ম্যানিপুলেট করার জন্য ব্যবহার করা হয়। উভয়ই বিভিন্ন উদ্দেশ্যে ব্যবহার করা যেতে পারে, যেমন ' git রিভার্ট ” কমান্ডটি একটি নতুন প্রতিশ্রুতি তৈরি করতে ব্যবহৃত হয় যা কমিটের অতিরিক্ত পরিবর্তনগুলিকে ফিরিয়ে দেয়। তবে ' git রিবেস ” কমিটগুলি সরানো বা পরিবর্তন করে একাধিক কমিটকে লিনিয়ার সিকোয়েন্সে মার্জ করতে কমান্ড ব্যবহার করা হয়। এই নির্দেশিকায়, আমরা 'এর মধ্যে পার্থক্য চিত্রিত করেছি git revert' এবং 'git rebase 'গিটে কমান্ড।