মডিউল ১.৭ : গিট , গিটহাব থিওরি

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

আবার ধরো তুমি একটা কোম্পানির প্রজেক্ট এ কাজ করতেছ, এক প্রজেক্ট এ ৩ জন একই সাথে কাজ করতেছ, এখন দেখা যাবে একজন কোড করে সেটাকে ড্রাইভ বা zip করে share করার পর আরেকজন দেখবে, তারপর আরেকজন কাজ করবে, কোনো এক কারণে যদি কোড ক্র্যাশ করে তাইলে কার কোড এর কারণে ক্রাশ করলো কিভাবে বুঝবে সেটা??

উপরের দুই সিনারিও অনুসারে এমন যদি হতো যে অনলাইন এ কোড রাখা যেত আর কে কখন কোন কোড এ চেঞ্জ করছে বোঝা যেত কতই না ভালো হতো। এই সমস্যা সমাধানের জন্যেই git, github এর আবির্ভাব।

ধরো তুমি কোড এ কিছু চেঞ্জ করছো, এই চেঞ্জ এর জন্যে কমেন্ট করে দিলা যে "Database Design Completed" , তারপর আবার এসে অন্য একটা কাজ করলা তারপর আবার কমেন্ট করে দিলা কি চেঞ্জ করছো, এখন তুমি যদি ফার্স্ট যে কমেন্ট করছো সেখানে কি কোড ছিল দেখতে চাও, git এর মাধ্যমে সেটা ট্রাক রাখতে পারবে। অর্থাৎ গিট হচ্ছে একটা ভার্সন কন্ট্রোল সিস্টেম যেটা তোমার কোড এর যাবতীয় চেঞ্জ গুলা ট্রাক করে রাখে, যাতে পরবর্তীতে কাজ করতে গেলে সহজেই ধরতে পারো যে কোথায় কখন কেনো চেঞ্জ করছো।

এখন এইযে হিস্টোরি টা এটা তোমার ল্যাপটপ এর মধ্যেই একটা ফোল্ডার তৈরি হয়ে সেভ হয়, কিন্তু সেটা তুমি ছাড়া আর কেউ দেখতে পারবে না, তাইলে কিন্তু লাভ হলো না, সবাই যেনো কোড দেখতে পারে, কোথায় কখন কি চেঞ্জ করছি দেখতে পারে সেটার জন্যেই আসছে github।

Github আসলে কোড হোস্ট করার একটা প্ল্যাটফর্ম যাতে করে তুমি তোমার কোড, কোড এর চেঞ্জ গুলা সবার সাথে share করতে পারো।

Last updated