বাংলায় Git এবং GitHub । পার্ট-১
Md Sinikdhoআজকে আমরা খুব সহজ ভাষায় বুঝবো, Git কী, GitHub কী, আর এই দুইটার মধ্যে আসল পার্থক্য কোথায়।

Git আর GitHub এর মধ্যে পার্থক্য কী?
Programming বা Software Development ফিল্ডে আসার পর প্রায় সবারই একটা জিনিসের সাথে পরিচয় হয়, Git এবং GitHub।
কিন্তু beginner দের মধ্যে খুব common একটা confusion থাকে:
Git আর GitHub কি একই জিনিস?
নাকি আলাদা?
GitHub থাকলে Git শেখার দরকার আছে?
আজকে আমরা খুব সহজ ভাষায় বুঝবো, Git কী, GitHub কী, আর এই দুইটার মধ্যে আসল পার্থক্য কোথায়।
Git কী?
Git হলো একটি Version Control System।
এখন প্রশ্ন আসতে পারে, Version Control System আবার কী?
ধরো, তুমি একটা project বানাচ্ছো। আজকে কিছু code লিখলে, কালকে আবার সেটার মধ্যে নতুন feature add করলে, পরশু কিছু bug fix করলে।
কিন্তু হঠাৎ করে দেখা গেলো নতুন code দেওয়ার পর project নষ্ট হয়ে গেছে। তখন তুমি চাইবে আগের working version-এ ফিরে যেতে।
এই কাজটাই Git সহজ করে দেয়।
Git তোমার project এর পরিবর্তনগুলো track করে রাখে। অর্থাৎ, কখন কোন file পরিবর্তন হলো, কে পরিবর্তন করলো, কী পরিবর্তন হলো, এসব information Git সংরক্ষণ করে রাখে।
সহজভাবে বললে:
Git হলো তোমার code এর history রাখার system।
একটা সহজ উদাহরণ
মনে করো, তুমি একটা index.html ফাইল বানালে।
প্রথমে সেখানে লিখলে:
<h1>Hello World</h1>
এরপর তুমি update করে লিখলে:
<h1>Hello Bangladesh</h1>
আরও পরে তুমি নতুন paragraph add করলে:
<h1>Hello Bangladesh</h1>
<p>Welcome to my website</p>
Git চাইলে এই প্রতিটা step মনে রাখতে পারে।
মানে তুমি চাইলে পরে দেখতে পারবে:
আগে কী ছিল
এখন কী আছে
কোন line পরিবর্তন হয়েছে
দরকার হলে আগের version-এ ফিরে যেতে পারবে
এটাই Git এর সবচেয়ে বড় শক্তি।
Git কেন দরকার?
Programming শেখার শুরুতে অনেকেই ভাবে, “আমি তো একাই code লিখছি, Git শেখার দরকার কী?”
কিন্তু বাস্তবে Git শুধু team project এর জন্য না, single developer এর জন্যও অনেক দরকারি।
Git ব্যবহার করলে:
১. Code এর history রাখা যায়
তুমি project এ কী কী পরিবর্তন করেছো, সব track করা যায়।
২. ভুল হলে আগের অবস্থায় ফিরে যাওয়া যায়
নতুন code লিখে project নষ্ট হয়ে গেলে আগের working version restore করা যায়।
৩. একই project এর আলাদা version নিয়ে কাজ করা যায়
যেমন main project ঠিক রেখে নতুন feature test করা যায়।
৪. Team এর সাথে কাজ করা সহজ হয়
একই project এ অনেক developer কাজ করলেও কে কী change করেছে সেটা বোঝা যায়।
GitHub কী?
এবার আসি GitHub এ।
GitHub হলো একটি online platform যেখানে Git দিয়ে track করা project বা code রাখা যায়।
আরও সহজ করে বললে:
Git তোমার computer-এ project এর history manage করে।
GitHub সেই project online-এ রাখার জায়গা দেয়।
যেমন Google Drive এ আমরা file upload করে রাখি, তেমনি GitHub এ developer রা তাদের code upload করে রাখে।
কিন্তু GitHub শুধু code রাখার জায়গা না। এখানে আরও অনেক কাজ করা যায়।
যেমন:
অন্য developer এর code দেখা
নিজের project public বা private রাখা
team member দের সাথে project এ কাজ করা
open source project এ contribute করা
issue track করা
pull request করা
project portfolio তৈরি করা
Git আর GitHub কি একই জিনিস?
না, Git আর GitHub একই জিনিস না।
এই confusion টা beginner দের মধ্যে খুব common।
Git হলো একটি tool।
GitHub হলো একটি website বা online platform।Git তোমার computer-এ install করা থাকে।
GitHub browser দিয়ে access করা যায়।Git দিয়ে তুমি project এর version control করো।
GitHub দিয়ে তুমি সেই project online এ store, share এবং collaborate করো।একটা বাস্তব উদাহরণ দিয়ে বুঝি
ধরো, তুমি একটা diary লিখছো।
প্রতিদিন তুমি diary তে কী পরিবর্তন করলে সেটা লিখে রাখছো। কোন দিনে কী লিখলে, কী কাটলে, কী add করলে সব history রাখছো।
এখানে Git হলো সেই diary এর history রাখার system।
এবার তুমি সেই diary টা online এ upload করলে, যাতে তুমি যেকোনো জায়গা থেকে দেখতে পারো বা অন্য কেউ চাইলে দেখতে পারে।
এখানে GitHub হলো সেই online জায়গা যেখানে diary টা রাখা আছে।
আরেকটা analogy
Git এবং GitHub এর সম্পর্কটা এমন:
Git = Camera
GitHub = Photo Album Online-Camera দিয়ে তুমি ছবি তুলছো।
-Online album এ সেই ছবি upload করে রাখছো।-Camera ছাড়া photo তোলা যাবে না।
-কিন্তু photo online এ রাখার জন্য একটা platform দরকার।ঠিক তেমনই:
Git দিয়ে তুমি code এর version save করো।
GitHub এ সেই code online এ রাখো।Git ছাড়া কি GitHub ব্যবহার করা যায়?
হ্যাঁ, কিছু basic কাজ করা যায়।
GitHub website এ গিয়ে তুমি file upload করতে পারো, edit করতে পারো, repository বানাতে পারো।
কিন্তু real development workflow এর জন্য Git জানা খুব দরকার।
কারণ professional developer রা সাধারণত local computer এ code লিখে Git command দিয়ে GitHub এ push করে।
GitHub ছাড়া কি Git ব্যবহার করা যায়?
হ্যাঁ, অবশ্যই যায়।
GitHub ছাড়াও Git ব্যবহার করা যায়।
কারণ Git একটি আলাদা tool। তুমি চাইলে শুধু নিজের computer-এ Git ব্যবহার করে project এর version control করতে পারো।
GitHub ছাড়াও আরও platform আছে, যেমন:
-GitLab
-Bitbucket
-Codeberg
তাই মনে রাখতে হবে:
GitHub Git এর উপর ভিত্তি করে তৈরি, কিন্তু GitHub মানেই Git না।
Repository কী?
Git এবং GitHub শেখার সময় আরেকটা word বারবার আসবে—Repository বা সংক্ষেপে Repo।
Repository হলো project রাখার জায়গা।
তোমার project এর code, file, folder এবং Git history—সব মিলিয়ে একটা repository হয়।
সহজভাবে:
একটা project = একটা repository
যেমন তুমি যদি একটা portfolio website বানাও, তাহলে সেটার জন্য একটা repository থাকবে।
Local Repository এবং Remote Repository
Repository দুই ধরনের হতে পারে:
১. Local Repository
যে repository তোমার নিজের computer এ থাকে, সেটাকে Local Repository বলে।
মানে তুমি নিজের laptop বা PC তে code লিখছো এবং Git দিয়ে track করছো।
২. Remote Repository
যে repository online এ থাকে, যেমন GitHub এ, সেটাকে Remote Repository বলে।
তুমি local computer থেকে code লিখে remote repository তে upload করতে পারো।
Git এর ভাষায় এই upload করাকে সাধারণত বলা হয় push।
আর GitHub থেকে code নিজের computer এ আনার কাজকে বলা হয় clone বা pull।
Git এবং GitHub এর মূল পার্থক্য
Beginner হিসেবে আগে কোনটা শিখবো?
Beginner হিসেবে আগে Git এর basic concept শেখা ভালো।
কারণ Git বুঝলে GitHub ব্যবহার করা অনেক সহজ হয়ে যায়।
তোমার শেখার order হতে পারে:
১. Git কী
২. Repository কী
৩. Commit কী
৪. Branch কী
৫. GitHub এ account তৈরি
৬. GitHub repository বানানো
৭. Git দিয়ে code push করা
৮. GitHub থেকে project clone করা
কিছু common Git command
নিচের command গুলো beginner দের জন্য খুব important:
নতুন project এ Git চালু করার জন্য।
git init
project এর বর্তমান অবস্থা দেখার জন্য।
git status.
সব পরিবর্তিত file staging area তে নেওয়ার জন্য।
git add .
পরিবর্তনগুলো history হিসেবে save করার জন্য।
git commit -m "first commit"
local project এর সাথে GitHub repository connect করার জন্য।
git remote add origin <repository-link>
local code GitHub এ upload করার জন্য।
git push
GitHub থেকে project নিজের computer এ আনার জন্য।
git clone <repository-link>
ছোট করে মনে রাখার নিয়ম
Git আর GitHub নিয়ে confusion হলে শুধু এই লাইনটা মনে রাখো:
Git হলো tool, GitHub হলো platform।
আরও সহজভাবে:
Git দিয়ে code এর version control করা হয়।
GitHub এ সেই code online এ রাখা হয়।
শেষ কথা
Programming শেখার শুরুতে Git এবং GitHub একটু confusing মনে হতে পারে। কিন্তু একবার basic concept clear হয়ে গেলে এগুলো অনেক সহজ লাগে।
প্রথমে শুধু এইটা বুঝে রাখো:
Git তোমার code এর history রাখে।
GitHub তোমার code online এ রাখে।
দুইটা একসাথে ব্যবহার করলে তুমি নিজের project safe রাখতে পারো, team এর সাথে কাজ করতে পারো এবং নিজের portfolio তৈরি করতে পারো।পরের part এ আমরা দেখবো কীভাবে Git install করতে হয় এবং প্রথম Git repository তৈরি করতে হয়।
এই পোস্টটি লিখেছেন
আমাদের CWS কমিউনিটিতে যোগ দিতে ক্লিক করুন
পোস্টি ভালোলাগলে অবশ্যই বন্ধুদের মাঝে শেয়ার করবে,আর কোনো মন্তব্য থাকলে কমেন্ট করতে পারেন ধন্যবাদ .
মন্তব্যসমূহ (0)
মন্তব্য করতে লগইন করুন
Login to Comment