গিট রিভার্ট, চেকআউট এবং রিসেটের মধ্যে পার্থক্য কী?

Gita Ribharta Ceka A Uta Ebam Risetera Madhye Parthakya Ki



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

এই নিবন্ধের ফলাফল হল:

'গিট রিসেট', 'গিট রিভার্ট' এবং 'গিট চেকআউট' কমান্ডের মধ্যে পার্থক্য করুন?

' git রিভার্ট ', ' git চেকআউট ', এবং ' git রিসেট ' কমান্ডগুলি সোর্স কোডে পরিবর্তন করার উপায় এবং তারপরে সেগুলিকে পূর্বাবস্থায় ফিরিয়ে আনার উপায় যদি ব্যবহারকারী পছন্দ না করে যে তারা কীভাবে পরিণত হয়েছে৷ এই কমান্ডগুলির মধ্যে পার্থক্য তাদের কার্যকারিতা এবং ব্যবহারের মধ্যে রয়েছে, যেমন:







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

কিভাবে 'git revert' কমান্ড ব্যবহার করে কমিট পূর্বাবস্থায় ফেরাতে হয়?

কমিটগুলি পূর্বাবস্থায় ফেরাতে প্রথমে, পছন্দসই গিট সংগ্রহস্থলে যান এবং একটি ফাইল তৈরি করুন। তারপরে, ফাইল ট্র্যাক করুন এবং পরিবর্তন করুন। এর পরে, নতুন ফাইল, পর্যায়ে কিছু বিষয়বস্তু যোগ করুন এবং নতুন পরিবর্তন করুন। অবশেষে, 'চালনা করুন git রিভার্ট ” কমান্ড দিন এবং প্রত্যাবর্তন পরিবর্তনগুলি যাচাই করুন।



ধাপ 1: গিট ডিরেক্টরিতে যান

চালান ' সিডি 'নির্দিষ্ট স্থানীয় ডিরেক্টরি পাথ সহ কমান্ড করুন এবং এটিতে নেভিগেট করুন:



$ সিডি 'সি:\গো \R ভান্ডার1'





ধাপ 2: নতুন ফাইল তৈরি করুন

নীচের প্রদত্ত কমান্ডের সাহায্যে বর্তমান সংগ্রহস্থলে একটি নতুন ফাইল তৈরি করুন:

$ স্পর্শ demo_file.txt



ধাপ 3: নতুন ফাইল ট্র্যাক করুন

তারপর, ব্যবহার করুন ' git যোগ করুন স্টেজিং এলাকায় একটি নতুন ফাইল যোগ করার জন্য কমান্ড:

$ git যোগ করুন demo_file.txt

ধাপ 4: পরিবর্তন করুন

এরপরে, স্টেজিং এরিয়া থেকে ফাইলটি কমিট করতে নিম্নলিখিত কমান্ডটি চালান:

$ git কমিট -মি 'ডেমো ফাইল যোগ করা হয়েছে'

ধাপ 5: নতুন ফাইল আপডেট করুন

এর পরে, নতুন ফাইলে কিছু বিষয়বস্তু যুক্ত করুন এবং এটির সাহায্যে আপডেট করুন ' প্রতিধ্বনি 'আদেশ:

$ প্রতিধ্বনি 'হাই! ডেমো কন্টেন্ট' >> demo_file.txt

ধাপ 6: স্টেজিং এরিয়াতে নতুন পরিবর্তন যোগ করুন

তারপর, চালান ' git যোগ করুন। সমস্ত যোগ করা পরিবর্তনগুলি স্টেজ করার কমান্ড:

$ git যোগ করুন .

ধাপ 7: নতুন পরিবর্তন করুন

বার্তা সহ নীচের প্রদত্ত কমান্ডটি কার্যকর করে পর্যায়ক্রমে পরিবর্তনগুলি প্রতিশ্রুতিবদ্ধ করুন:

$ git কমিট -মি 'ফাইল আপডেট করা হয়েছে'

ধাপ 8: গিট লগ চেক করুন

প্রতিশ্রুতি ইতিহাস দেখতে, নীচের প্রদত্ত কমান্ড ব্যবহার করে গিট লগ চেক করুন:

$ git লগ --অনলাইন

নীচের আউটপুট অনুসারে, দুটি কমিট রয়েছে এবং HEAD নির্দেশ করছে ' ফাইল আপডেট করা হয়েছে 'কমিট:

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

ধাপ 9: পরিবর্তনগুলি প্রত্যাবর্তন করুন

চালান ' git রিভার্ট ' সেই প্রতিশ্রুতির পরিবর্তনগুলি পূর্বাবস্থায় ফিরিয়ে আনতে HEAD সহ কমান্ড:

$ git রিভার্ট হেড

নীচের স্ক্রিনশটে, আপনি দেখতে পাচ্ছেন যে প্রত্যাবর্তন অপারেশন সফলভাবে সঞ্চালিত হয়েছে:

ধাপ 10: প্রত্যাবর্তন পরিবর্তন যাচাই করুন

অবশেষে, কমিট ইতিহাসে নতুন পরিবর্তনগুলি দেখতে গিট রেফারেন্স লগ ইতিহাস পরীক্ষা করুন:

$ git লগ --অনলাইন

লক্ষ্য করা যায় যে ' ফাইল আপডেট করা হয়েছে ” প্রত্যাবর্তন অপারেশনের পরেও প্রতিশ্রুতি এখনও প্রকল্পের ইতিহাসে রয়েছে। সুতরাং, এটি অপসারণ করার পরিবর্তে, এই বিশেষ কমান্ডটি তার পরিবর্তনগুলি প্রত্যাবর্তনের জন্য একটি নতুন প্রতিশ্রুতি যুক্ত করেছে:

কিভাবে 'গিট চেকআউট' কমান্ড ব্যবহার করে শাখা পরিবর্তন করবেন?

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

ধাপ 1: শাখার তালিকা চেক করুন

'এর সাহায্যে বর্তমান সংগ্রহস্থলে শাখাগুলির তালিকা দেখুন git শাখা 'আদেশ:

$ git শাখা

নীচের আউটপুটে, এটি দেখা যায় যে সংগ্রহস্থলে দুটি শাখা উপস্থিত রয়েছে এবং ' মাস্টার ” হল বর্তমান কর্মরত শাখা:

ধাপ 2: অন্য শাখায় চেকআউট করুন

এখন, চালান ' git চেকআউট কাঙ্খিত শাখার নাম সহ কমান্ড দিন এবং এতে স্যুইচ করুন:

$ git চেকআউট দেব

ধাপ 3: বর্তমান শাখা যাচাই করুন

চেকআউট অপারেশন সফলভাবে সম্পাদিত হয়েছে কিনা তা নিশ্চিত করতে, শাখাগুলির তালিকা দেখুন:

$ git শাখা

এটা দেখা যায় যে আমরা সফলভাবে চেকআউট করেছি ' মাস্টার 'এ শাখা' দেব 'শাখা। এখন, ' দেব ” হল বর্তমান কর্মরত শাখা:

কীভাবে ব্যবহার করে পরিবর্তনগুলি আনট্র্যাক করবেন 'গিট রিসেট' কমান্ড?

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

ধাপ 1: গিট লগ চেক করুন

প্রতিশ্রুতি ইতিহাস দেখুন এবং 'কে ব্যবহার করে হেড কোথায় নির্দেশ করছে তা পরীক্ষা করুন' git লগ 'আদেশ:

$ git লগ --অনলাইন

এটি লক্ষ্য করা যায় যে মাথাটি নির্দেশ করছে ' ফাইল আপডেট করা হয়েছে 'কমিট:

ধাপ 2: পরিবর্তনগুলি পুনরায় সেট করুন

গিট স্থানীয় ওয়ার্কিং ডিরেক্টরি থেকে প্রতিশ্রুতি অপসারণ করতে, 'চালনা করুন git রিসেট ' কমান্ড সহ '- কঠিন ” বিকল্প, এবং পছন্দসই HEAD অবস্থান নির্দিষ্ট করুন যেখানে পয়েন্টারটি সরানোর জন্য প্রয়োজন:

$ git রিসেট -- কঠিন মাথা ~ এক

প্রদত্ত আউটপুট নির্দেশ করে যে রিসেট অপারেশন সফলভাবে সম্পাদিত হয়েছে:

ধাপ 3: রিসেট পরিবর্তনগুলি যাচাই করুন

শেষ অবধি, নীচের প্রদত্ত কমান্ডের মাধ্যমে গিট লগ চেক করে কমিট ইতিহাসে নতুন পরিবর্তনগুলি দেখুন:

$ git লগ --অনলাইন

আপনি দেখতে পাচ্ছেন যে ' ফাইল আপডেট করা হয়েছে 'কমিট ইতিহাস থেকে কমিট মুছে ফেলা হয়েছে এবং HEAD এখন নির্দেশ করছে ' ডেমো ফাইল যোগ করা হয়েছে 'কমিট:

আমরা এর মধ্যে পার্থক্য ব্যাখ্যা করেছি ' git রিভার্ট ', ' git চেকআউট ' এবং ' git রিসেট 'আদেশ।

উপসংহার

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