Version Control System: মনে করুন আপনি একটা সফটওয়্যার কম্পানিতে জব করেন। এবার একটা অর্ডার আসল বায়ারের কাছ থেকে । তাকে একটা সফটওয়্যার তৈরি করে দিতে হবে । এবার এই কাজটি করার জন্য ১০ জনের একটা টীম করে দেয়া হল । এবার আপনি তো কাজ করবেন এই টিমে। বেতন তো আর আপনাকে ফ্রি ফ্রি দিবে না। ওই সফটওয়্যার তৈরির জন্য সবাই একসাথে কাজ করার সময় কোড যোগ হবে বাদ যাবে আবার এমন হবে বাদ দেয়া কোড টি ফিরিয়ে আনতে হতে পারে । Add, remove, Retrive এদের একেকটা ভারসন বা আইডি দ্বারা নিয়ন্ত্রন করা হয়। এজন্য এই প্রসেস টাকে বলা হয় Version Control System. 

Version Control করার জন্য অনেক গুল সফটওয়্যার আছে তার মধ্যে গিট সবথেকে জনপ্রিয়। এবার কোড তো সবাইকে একসাথে করতে হবে এবং সেগুলোর Version Control করতে হবে তার জন্য কোডগুলকে অনলাইন কোন স্টোরেজে রাখতে হবে । তা হল গিটহাব ।

Repository: রিপজিটরি একটা জায়গা যেখানে আপনি আপনার কোড গুলকে জমা রেখে সবাই মিলে কাজ করতে পারেন বা একাই করতে পারেন। সহজ ভাষায় বলতে গেলে গিট রিপজিটরি হলো একটি ফোল্ডার বা ডিরেক্টরি যেখানে প্রজেক্ট বা সোর্স কোড রাখা হয়। এটা আপনার লোকাল কম্পিউটারও হতে পারে বা কোন অনলাইন হোস্টিংও হতে পারে।  রিপোজিটরি রাখার জন্য জনপ্রিয় অনলাইন  সার্ভিসগুলো হলো, GitHub, GitLab, এবং Bitbucket

Git Branch: 

মনে করেন আপনি আপনার মেইন প্রজেক্টে কাজ করছেন। এখন এই প্রজেক্টে নতুন একটা ফিচার যোগ করতে চান । তখন মেইন প্রজেক্টের সাথে তা সরাসরি যোগ না করে নতুন একটা ওয়ার্কিং ডিরেক্টরি তৈরি করে ডেমো বা টেস্টিং হিসেবে কোড করতে পারেন । একেই আমরা ব্রাঞ্চ বলছি। সাকসেসফুল ভাবে কাজ শেষ হয়ে গেলে পরে গিয়ে আমরা মার্জ করে নিতে পারি মুল বা মাস্টার ব্রাঞ্চের সাথে 

কিভাবে আমি আমার প্রজেক্টে গিত ব্যাবহার করব?

উত্তরঃ 

Step 1: Create Account

প্রথমে আপনাকে গিটহাবের মেইন পেজে যাইতে হবে সেখানে Create an account অথবা Sign UP লিংকে ক্লিক করে  সব ইনফরমেশন ঠিক ঠাক ভাবে দিতে হবে। তারপর সাবমিট বা কন্টিনিউ বাটনে ক্লিক করতে হবে। তারপর আপনার মেইল টি ভেরিফাই করতে হবে । এবার আপনি Sign in করুন 

Step 2: Create Repository

গিটহাবের (Github) মূল পেজ এ গিয়ে ডান কোনায় + প্লাস  চিহ্নতে ক্লিক করুন তারপর New reposiory তে ক্লিক করুন। এরপর রিপজিটরির একটা নাম দিন। রিপজিটরির নাম আপনার প্রজেক্টের নাম অনুসারে দিলে ভাল হয়। অনেক ঝামেলা থেকে বেচে যাবেন। বাকিটা আপনার ইচ্ছে। তারপর আপনার প্রজেক্ট সম্পর্কে ছোট একটা Description দেবেন আবার চাইলে নাও দিতে পারেন এটা অপশনাল। 

Step 3: Set Project/Folder ready for github using following code
এবার আপনাকে রিপজিটরির যে নাম দিয়েছেন সেই নামে একুটা ফোল্ডার ক্রিয়েট করতে হবে হার্ড ড্রাইভে । তার আগে বলে রাখা ভাল আপনি গিট সফটওয়্যার টি ডাউনলোড করে নিন এবং ইন্সটল করুন। চাইলে আপনি অন্য কোন টার্মিনাল ব্যবহার করেও করতে পারেন কিন্তু সেগুলা খুব ঝামেলা করে রান হতে চায় না ইরর দেখায়। এবার সেই ফোল্ডারে গিয়ে মাউসের রাই্ট বাটনে ক্লিক করলে git bash here ক্লিক করুন। তার পর নিচের কমান্ডগুল ফলো ক্রুন এবং একটার পর একটা রান করুন। 

  1. echo "# first-repo" >> README.md
  2. git init
  3. git add README.md
  4. git commit -m "fist-commit"
  5. git branch -m main
  6. git remote add origin https://github.com/<usr_name>/<repository_name>.git
  7. git push -u origin main
আপনি যদি গিট প্রথম ব্যবহার করে থাকেন তাহলে পুশ করার সময় আপনাকে প্রথমে গিট কনফিগার করতে বলবে । User name এবং Email ব্যবহার করে কনফিগার করে নিন । 
git config --global user.name "Your Name"git config --global user.email "youremail@yourdomain.com"

এবার যদি এটা করতে ঝামেলা হয়। আপনার রিপজিটরি ক্রিয়েট করার সময় একটা প্রথম পেজ আসবে এরকম। নিচের কমান্ডগুল ফলো করুন। 




Step 4: Status (optional), Add, Commit, Push
এবার আমাদের শুধু কোড করতে হবে আর এই চারটি কাজ করতে হবে। অবশ্যই চেষ্টা করতে হবে একটু কোড করা আর চারটি কাজ করা। আপনাকে তো আর এগুলা করতে টাকা লাগছে না। না করলে হতে পারে আপনার সারাদিনের কাজ বিফলে গেল । তখন কি করবেন? 
git status
git add . (git<space>add<space>fullstop)
git commit -m "<Message likhte hbe.ja isse>"
git push 

git status: এটা মুলত আপনি যদি কোন ধরনের মডিফিকেশন করেন তখন তা লাল চিহ্ন দেখাবে যে আপনি কোনটা ফাইল পরিবর্তন করেছেন।
git add . : এর জন্য আমাদের git add ব্যবহার করতে হবে। এতে করে আমাদের Modified Files/Folder গুলো কমিটের উপযুক্ত হবে (Staged হবে)।
git commit -m "message" : গিট পুশ কমান্ডের মাধ্যমে কোডগুল লোকাল প্রজেক্টে থেকে অনলাইনে রিপজিটরিতে সেভ করা হয়। 

আপাতত আপনি যদি এতটুকু জানেন তাহলে মোটামুটি লেভেলের কাজগুল সব করতে পারবেন বিগিনার হিসেবে।