ধরুন, আপনি একটি বাজারে যাচ্ছে হেটে হেটে হঠাৎ বৃষ্টি শুরু হল। আপনার তখন মনে হলে আরে আমি যদি এখন বাজারে না এসে বাড়ি থাকতাম। আমাদের প্রায়ই মনে হয়যে আমরা যদি এটা না করে ওই কাজটা করতাম। বা আমি যদি বাড়িতে থাকতাম তাহলে তো বৃষ্টিতে ভিজতাম না। আসলে বাস্তব জীবনে এটা আপাতত সম্ভব না হলেও আপনার কোন প্রজেক্টের ক্ষেত্রে কিন্তু এটা সম্ভব।
ধরুন আপনি একটি html এ কাজ করছেন। আপনার সাইটের ব্যাকগ্রাউন্ড কালার দিলেন লাল কিছুক্ষন পরে দিলেন হলদু আবার তার পরে দিলেন সবুজ। আপনি চাচ্ছেন এগুলো ট্রাকিং করতে এবং যখন আপনি সবুজ করেছিলেন তখন আপনার মনে হল আরে লাল টাই তো ভালো ছিল অথবা কি কি কালার আগে যোগ করেছিলেন সেগুলো দেখতে। তো এক্ষেত্রে ই গিট এর ব্যবহার।
মনে করি, আমি একটি ফোল্ডার তৈরি করি যার নাম test এবং এর ভিতরে index.html ও style.css নামে দুটো ফাইল আছে।

এখন আমি আমার টার্মিনাল ওপেন করে প্রথমে গিট ইনিশিয়ালাইজড করবো। তাই কমান্ড দিব git init ।
তাহলে আমাদের ফোল্ডার বা ডিরেক্টরীতে গিট ইনিশিয়ালাইজড হয়ে যাবে। আর এটা একবারই করা লাগে। আমাদের ডিরেক্টরীতে কি কি ফাইল আছে তা দেখতে আমরা টার্মিনালে কমান্ড দিব ls এবং হিডেন ফাইলগুলো দেখতে কমান্ড দিব ls -al
এখন আমরা আমাদের index.html ফাইলে কিছু লেখা যুক্ত করি।
এখন যদি আমি চেক করি গিটের কি অবস্থা তাহলে কমান্ড দেব git status তাহলে দেখবো যে দুটো ফাইল আছে তা এখনো আনট্রাকড এবং যুক্ত করা হয়নি।
তাই আমরা আমাদের html ও css ফাইল দুটো যুক্ত করার জন্য কমান্ড দিব git add <ফাইলের নাম>git add index.html style.css তাহলে আমাদের দুটো ফাইল গিটে যুক্ত হয়ে যাবে। তারপর যদি আমি চেক করি git status দিয়ে দেখবো আমাদের ডিরেক্টরী তে দুটো ফাইল যুক্ত হয়েছে কিন্তু কমিট দেয়া হয় নি।
এখন আমি আমার index.html ফাইলে কিছু লেখা যুক্ত করি। তারপর আবার git status দিয়ে দেখি কি হয়। তাহলে দেখবো যে আমাদের ফাইলে কমিট করা হয়নি এবং index.html ফাইলটি মডিফাই করা হয়েছে।
এখণ আমরা কমিট দেওয়ার জন্য টার্মিনালে লিখবো git commit -m "<আমার কমিটের অর্থবহ লেখা>" <ফাইলের নাম> এবং তারপর git status লিখে দেখবো কি অবস্থা আমার ফাইলের।
দেখবো যো আমার শুধুমাত্র style.css ফাইলটি কমিট দেওয়া হয়নি। এখন আমি সেটা কমিট দিয়ে ফেলবো।
এখন আমি git status দিেয় দেখবো যে আমার ডিরেক্টরী ক্লীন। এখন আমি আমার index.html ফাইলে আমি আরেকট লেখা যোগ করি। এবং গিট স্ট্যাটাস দিয়ে চেক করে দেখি।
দেখবো যে আমার html ফাইলটি মোডিফাই করা হয়েেছে। এবং কি মডি ফাই করা হয়ে হয়েছে তা দেখতে git diff লিখে কমান্ড দিব আমার টার্মনালে। এখন আমি git log কমান্ড দিয়ে দেখবো কিকি গিট কমিট করেছি।
তারপর আমি আমার কোন git log যেতে চাইলে আমি কমান্ড দিব git show <git log hash no> .তাই আমি এখন আমার সর্বশেষ গিট কমিটের হ্যাশ চেক করে দেখবো কি পরিবর্তন করেছিলাম আমার ফাইলে।
ধরুন আপনি একটি html এ কাজ করছেন। আপনার সাইটের ব্যাকগ্রাউন্ড কালার দিলেন লাল কিছুক্ষন পরে দিলেন হলদু আবার তার পরে দিলেন সবুজ। আপনি চাচ্ছেন এগুলো ট্রাকিং করতে এবং যখন আপনি সবুজ করেছিলেন তখন আপনার মনে হল আরে লাল টাই তো ভালো ছিল অথবা কি কি কালার আগে যোগ করেছিলেন সেগুলো দেখতে। তো এক্ষেত্রে ই গিট এর ব্যবহার।
মনে করি, আমি একটি ফোল্ডার তৈরি করি যার নাম test এবং এর ভিতরে index.html ও style.css নামে দুটো ফাইল আছে।

এখন আমি আমার টার্মিনাল ওপেন করে প্রথমে গিট ইনিশিয়ালাইজড করবো। তাই কমান্ড দিব git init ।
তাহলে আমাদের ফোল্ডার বা ডিরেক্টরীতে গিট ইনিশিয়ালাইজড হয়ে যাবে। আর এটা একবারই করা লাগে। আমাদের ডিরেক্টরীতে কি কি ফাইল আছে তা দেখতে আমরা টার্মিনালে কমান্ড দিব ls এবং হিডেন ফাইলগুলো দেখতে কমান্ড দিব ls -al
এখন আমরা আমাদের index.html ফাইলে কিছু লেখা যুক্ত করি।
এখন যদি আমি চেক করি গিটের কি অবস্থা তাহলে কমান্ড দেব git status তাহলে দেখবো যে দুটো ফাইল আছে তা এখনো আনট্রাকড এবং যুক্ত করা হয়নি।
তাই আমরা আমাদের html ও css ফাইল দুটো যুক্ত করার জন্য কমান্ড দিব git add <ফাইলের নাম>git add index.html style.css তাহলে আমাদের দুটো ফাইল গিটে যুক্ত হয়ে যাবে। তারপর যদি আমি চেক করি git status দিয়ে দেখবো আমাদের ডিরেক্টরী তে দুটো ফাইল যুক্ত হয়েছে কিন্তু কমিট দেয়া হয় নি।
এখন আমি আমার index.html ফাইলে কিছু লেখা যুক্ত করি। তারপর আবার git status দিয়ে দেখি কি হয়। তাহলে দেখবো যে আমাদের ফাইলে কমিট করা হয়নি এবং index.html ফাইলটি মডিফাই করা হয়েছে।
এখণ আমরা কমিট দেওয়ার জন্য টার্মিনালে লিখবো git commit -m "<আমার কমিটের অর্থবহ লেখা>" <ফাইলের নাম> এবং তারপর git status লিখে দেখবো কি অবস্থা আমার ফাইলের।
দেখবো যো আমার শুধুমাত্র style.css ফাইলটি কমিট দেওয়া হয়নি। এখন আমি সেটা কমিট দিয়ে ফেলবো।
এখন আমি git status দিেয় দেখবো যে আমার ডিরেক্টরী ক্লীন। এখন আমি আমার index.html ফাইলে আমি আরেকট লেখা যোগ করি। এবং গিট স্ট্যাটাস দিয়ে চেক করে দেখি।
দেখবো যে আমার html ফাইলটি মোডিফাই করা হয়েেছে। এবং কি মডি ফাই করা হয়ে হয়েছে তা দেখতে git diff লিখে কমান্ড দিব আমার টার্মনালে। এখন আমি git log কমান্ড দিয়ে দেখবো কিকি গিট কমিট করেছি।
তারপর আমি আমার কোন git log যেতে চাইলে আমি কমান্ড দিব git show <git log hash no> .তাই আমি এখন আমার সর্বশেষ গিট কমিটের হ্যাশ চেক করে দেখবো কি পরিবর্তন করেছিলাম আমার ফাইলে।











Comments