short note about Basic Git and GitHub

short note about Basic Git and GitHub

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

Basics

-- git initialtizayion 
git init 
git add hello.txt --to stage specific file
git commit -m "your message"

-------------- to show git status. (git status)--------------
git status
-------------- to show git log. (git log)--------------
git log -- it's show your commits

কোণ স্পেছিফিক কমিট দেখতে চাইলে অর্থাৎ এখানে কি কি করা হয়েছিল commit Id এ সাহায্যে

-- command
git show commit_id

যদি আপনি কমিটের difference দেখতে চান তাহলে

-- command
git diff

যদি difference না থাকে তাহলে কিছু দেখাবে না । আর যদি দেখতেই চান কি কি stage করা হয়েছে তাহলে এই কমান্ড দিতে হবে ।

// command
git diff --stage

// কোণ স্পেছিফিক কমিট ID দিয়ে difference দেখতে চাইলে 
git diff commit_id commit_id
           👆👆👆.    👆👆👆

to delete an file and clean the file log

--command
git rm hello.txt

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

-- command
git checkout commit_id file_name_with_ext
-- আর যদি সেখানেই ব্যাক করতে চান । 
git checkout commit_id file_name

Branching

to see which branch you are in right now.

git branch

to create a new Branch

-- creating new branch command
git branch branch_name

how to swhitch branch

git checkout branch_name
-- মনে করার কোণ কারণ নেই যে যেখান থেকে branch সুয়িচ করছেন সেখানের  কোড replace হবে । ফাইল একই হলেও যদি ব্রাঞ্চ আলাদা হয় তাহলে ব্রাঞ্চ অনুযায়ী চেঞ্জেস গুলো ট্রাকড রাখবে ।

Marge

এই যে আমরা ব্রাঞ্চ নিয়ে কাজ করলাম । ব্রাঞ্চ এঁর কোড ঠিকমত কাজ করলেতো টাকে মাস্টের/মেইন ব্রাঞ্চে অ্যাড করতে হবে । এটাই মূলত করে এই marge. এটা করার পূর্বে কিছু স্টেপ আপনাকে ফলো করতে হবে ।

১। যেই ব্রাঞ্চের সাথে marge করতে চাচ্ছেন সেখান শিফট করুন

-- marging command
git marge branch_name -- ধরুন এখানে আমরা মেইন ব্রাঞ্চের সাথে branch_name কে marge করতে চাচ্ছি

এই হয়ে গেল সিম্পল একটা কমান্ডের মাধ্যমে marge করা । যদি autometic marge না হয়ে failed হয় বা marge conflict হয়ে যায় তাহলে এটাকে ম্যানুয়ালি হ্যান্ডল করতে পারেন । VS CODE editor মাধদমে আমরা সমাধান করব আপাতত । কোড গুলোকে accept করে নিব , যদি ঠিক থাকে । যেহেতু এটা manual process তাই যেই ব্রাঞ্চে marge করলাম টাকে git add commit -m "message" করতে হবে .

একবারে ব্রাঞ্চ তৈরি করে সেখানে সুয়িচ করতে চাইলে

--- command
git checkout -b another_branch_name

Fork and pull

এঁর জন্য আপনার দরকার হবে অন্য একজনের গিট রেপো । সেই রেপকে আপনাকে প্রথমে fork করে নিতে হবে । এতে করে আপনার রিপোতে সেই সেম প্রজেক্টটা চলে আসবে । আপনি এখন এই রিপোটা ক্লোন করবেন আপনার লোকাল পিসি তে । এবং কোড করা শেষে সেখানেই কোড পুশ করবেন । তারপর আপনার fork রিপোতে গিয়ে পুল রিকুয়েস্ট accept করবেন । তাহলে যার গিটহাব থেকে রিপোটি fork করেছিলেন সে নোটিফিকেশান পাবে । সে যদি কোড রিভিউ করে dicide করবে যে কোড অ্যাড করবে নাকি করবে না ।

Did you find this article valuable?

Support Rashedul Islam by becoming a sponsor. Any amount is appreciated!