Git and Github Bangla Tutorial | What is Repository & Git Add | Git Commit | Git Push | Part - 3

Tutorial | Git and Github Bangla Tutorial | What is Repository & Git Add | Git Commit | Git Push | Part - 3

Git and Github Bangla Tutorial | What is Repository & Git Add | Git Commit | Git Push | Part - 3

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

WATCH ON YOUTUBE:  Git and Github Bangla Tutorial Part - 3

Subscribe

🎯 আজকে আমরা যে বিষয়গুলো নিয়ে আলোচনা করবে সে বিষয়গুলো হচ্ছে:

What is a repository (রিপোজিটরি কি)

রিপোজিটরি হচ্ছে এমন একটা ফোল্ডার বা ডিরেক্টরি যেখানে আমরা আমাদের প্রজেক্ট নিয়ে কাজ করি এবং সেখানে অবশ্যই গিট ইনিশিয়ালাইজ করা থাকে ।

What is work directory (ওয়ার্ক ডিরেক্টরি কি)

ওয়ার্ক ডিরেক্টরি হচ্ছে এমন একটা ফোল্ডার যেখানে আমরা আমাদের প্রজেক্টটা নিয়ে কাজ করি, সেটা হচ্ছে আমাদের ওয়ার্ক ডিরেক্টরি । মনে করেন আমরা একটা কোন প্রজেক্ট নিয়ে কাজ করতেছি আমাদের তো একটা মেইন ফোল্ডার থাকে ঐ মেইন ফোল্ডারটা হচ্ছে আমাদের ওয়ার্ক ডিরেক্টরি।

What is staging area (স্টেজিং এরিয়া কি)

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

Local Repository & Remote Repository(রিমোট রিপোজিটরি কি ও লোকাল রিপোজিটরি কি)

রিপোজিটরি কি সেটা তো আমি একটু আগে আপনাদের বললাম উপরে । আমাদের সেই রিপোজিটরি টা যখন আমাদের লোকাল কম্পিউটারের মধ্যে হয়ে থাকে তখন সেটাকে বলা হয় লোকাল রিপোজিটরি এবং সেই রিপোজিটরি যখন আমাদের কোন সার্ভারে হয়ে থাকে যেখানে আমরা রিমোট অ্যাক্সেস করতে পারি সেটাকে বলা হয় রিমোট রিপোজিটরি

Git Init:

যখন আমরা কোনো একটা প্রজেক্টে বা কোন একটা ফোল্ডার বা ডিরেক্টরির এর মধ্যে গিট ইনিশিয়ালাইজ করতে চাইবো তখন আমাদেরকে এই কমান্ড ব্যবহার করতে হবে

git status:

আসলে এই কমান্ড এর মাধ্যমে আমরা আমাদের ওয়ার্ক ডিরেক্টরির আপডেট মানে আমাদের ওয়ার্ক ডিরেক্টরির এর মধ্যে কোন কিছু চেঞ্জ হয়েছে কিনা কোন কিছু এডিট করা হয়েছে কিনা কোন কিছু এড করা হয়েছে কিনা আমরা সবকিছু এ কমান্ডের মাধ্যমে চেক করতে পারে ।

git add

এই কমান্ডের মাধ্যমে আমরা আমাদের ওয়ার্ক ডিরেক্টরির কোন কিছু চেঞ্জ বা আপডেট কে স্টেজিং এরিয়াতে নিয়ে যেতে পারবো।

git commit

আমরা যখন আমাদের প্রজেক্ট এর কোন একটা চেঞ্জ কে আমাদের রিপোজিটরি এর মধ্যে একটা ভার্সন হিসেবে কিংবা একটা স্টেট সংরক্ষণ করে রাখতে চাই । মানে স্টেজিং এরিয়া থেকে যখন আমরা রিপোজিটরি এর মধ্যে সংরক্ষণ করে রাখতে চাই। তখন আমরা ব্যবহার করি হচ্ছে যে- git commit command.

git push

যখন আমরা আমাদের লোকাল রিপোজিটরি এর চেঞ্জ গুলোকে রিমোট রিপোজিটরি এর মধ্যে আপলোড করতে চায় তখন আমরা ব্যবহার করি git push. example: git push origin master (master means master branch)

git pull

যখন আমরা আমাদের রিমোট রিপোজিটরি চেঞ্জ গুলোকে আমাদের লোকাল রিপোজিটরি সহ একদম আমাদের ওয়ার্ক ডিরেক্টরি পর্যন্ত নিয়ে আসতে চাইবো তখন আমরা ব্যবহার করি git pull

git clone

আসলে git clone কমান্ড এ কারণেই ব্যবহার করা হয় যখন আমরা আমাদের রিমোট রিপোজিটরি এর কোন একটা প্রজেক্ট কে একদম সম্পূর্ণরূপে কপি করে আমাদের লোকাল রিপোজিটরি তে নিয়ে আসতে চায় তখন আমরা ব্যবহার করি হচ্ছে git clone. Example: git clone https://github.com/mithunrana/image-design-idea.git

git checkout

মনে করেন আমরা আমাদের রিপোজিটরি এর মধ্যে আমাদের প্রজেক্ট এর কয়েকটা ভার্সন সংরক্ষণ করে রেখেছি । এখন আমরা যখন একটা ভার্সন থেকে অন্য আরেকটা ভার্সনের যেতে চাইবো তখন কিন্তু আমাদের একটা কমান্ড ইউজ করতে হবে আর ঠিক তখন আমরা যে কমান্ডটা ইউজ করে থাকি সেটা হচ্ছে গিট চেক আউট । প্রোজেক্টের একটা ভার্সন থেকে অন্য আরেকটা ভার্সনে যাওয়ার জন্য অথবা একটা ভার্সন থেকে নতুন অন্য একটা ব্রাঞ্চে যাওয়ার জন্য ব্যবহার করা হয়

git diff

মনে করেন আমরা আমাদের প্রজেক্টে কয়েকটা ভার্সন সংরক্ষণ করে রেখেছি এখন একটা ভার্সন থেকে আরেকটা ভার্সনের মধ্যে আসলে পার্থক্যটা কি এটা যখন আমরা চেক করতে চাইবো তার জন্য আমাদেরকে যে কমান্ডটি ব্যবহার করতে হবে সেটা হচ্ছে Git diff. অথবা আমরা যদি চেক করতে চাই যে আমাদের স্টেজিং এরিয়া এবং ওয়ার্ল্ড ডিরেক্টরি এর মধ্যে কি পার্থক্য আছে সেটা চেক করতে পারবো আমাদের এই Git diff কমান্ড ইউজ করে।

উদাহরণ: git diff CommitID CommitID

দেখেন আমি এখানে দেখিয়েছি কিভাবে Git diff কমান্ড টা লিখতে হয় এখানে যে কমিট আইডি দেওয়া হয়েছে এখানে মূলত হচ্ছে আমরা যখন, আমাদের প্রজেক্ট এর কোন একটা ভার্সন সংরক্ষন করে রেখেছিলাম ঠিক তখনই কিন্তু আমাদের প্রত্যেকটা ভার্সনের জন্য একটি করে কমিট আইডি দেওয়া হয়েছে। এখানে সেই কমিট আইডি দুটো আমাদেরকে দিতে হবে যে দুটো আইডির মধ্যে আমরা পার্থক্য চেক করতে চাচ্ছি।

🕒 Time Stamps:

00:00 ▶️ Introduction

00:43 ▶️ what is a repository 01:17 ▶️ how many places are git work 01:43 ▶️ how many steps in the local computer of git 02:10 ▶️ what is the work directory 02:33 ▶️ what is the staging area 03:14 ▶️ what is a local repository 03:41 ▶️ what is a remote repository 05:35 ▶️ git add 06:29 ▶️ git commit 07:26 ▶️ git push 08:24 ▶️ git fetch 09:06 ▶️ git pull and git clone 09:25 ▶️ git clone 10:25 ▶️ git checkout 11:46 ▶️ git diff 12:26 ▶️ outro

Watch More

Why Tech Help Info ? Our Main Concern Is Client Satisfaction & Quality Creative Service

Creative

Our team are creative & innovative. We are always updated we always try to that creative solutions for each of our client’s.

Simple Easy & Smart

Our solutions is always latest technology & up to date based, user-friendly and very easy maintenance.

Quick Support

We are always available 7 days & 24 hour in your service via online offline.

Client Satisfaction

Our first priority are client Satisfaction. we always try to best to our client service and satisfy

Tech Help Info , We associate nobility with top quality, integrity and timeliness to provide 24/7 quality service. specially designed to facilitate our customer, user experience beyond expectation.
Privacy Policy | Terms of Use

©Copy right by TECH HELP INFO 2018 - 2020
Editor And Publisher : Md. Mithun Rana
129/1 ka SK Goli, Bata Signal, New Elephant Road, Dhaka-1205
Phone:+88 01836375309, +88 01836375309, Email: techhelpinfobd@gmail.com
Design Development By: Mithun Rana