গিট (GIT) আদ্যপান্ত পঞ্চম পর্ব

Git: Distributed Version Control System

গিট টিউটোরিয়ালে স্বাগতম। গত পর্বে আমরা দেখেছি commit message এর best rules. এই পর্বে আমরা দেখবো git concepts and structure.

Git Concepts

Version Control System এ ২ ধরনের structure আছে।
1. Three tree architecture.
2. Two tree architecture.

Two tree architecture

two tree architecture
Two tree achitecture এর basic rules হলো আপনি checkout করলেন আপনার files গুলো repository থেকে working copy তে, তারপর আপনার files গুলোতে change করলেন এবং commit করলেন working copy থেকে repository তে।

Three tree architecture

Git use করে three tree architecture.
three tree architecture

Git Workflow

ধরুন, working level এ আমাদের একটি file আছে file.txt. যখন git add করা হলো তখন file টি staging level এ add হলো। এরপর যখন git commit করা হলো তখন file টি repository তে add হলো। এই process টি কে আমরা ধরি A. সুতরাং এখন আমাদের working level, staging level and repository তে আছে A.

এখন আমরা আমাদের working level এ change করলাম, ধরে নিন change টি হলো B. যখন আমরা আবার git add করলাম তখন staging level এ B add হলো। যখন commit করা হলো তখন repository তে add হলো A এর পাশে add হলো B।
নিচের gif image টি থেকে আমরা খুব সহজেই git working flow সম্পর্কে ধারনা পেতে পারি।
working flow

মনে রাখার জন্য

আমরা আমাদের আগের example টিতে changes বুঝানোর জন্য simply A,B দিয়ে define করেছি। কিন্তু Git আসলে changes গুলোকে অন্যভাবে define করে। Git data গুলোকে simple number এ convert করে। এই convert করার জন্য git SHA-1 hash algorithm ব্যবহার করে, যা 40 characters এর hexadecimal string generate করে।
নিম্মোক্ত ছবিটিতে দেখানো হয়েছে git এ কিভাবে commit গুলো একে অপরের সাথে connected.
referring commits

HEAD Pointer

Head pointer হলো reference variable যেটা point করে current branch এর last commit কে। Branch নিয়ে বিস্তারিত আমরা পরবর্তিতে জানবো।
এখন ছবির মাধ্যমে দেখা যাক Head কিভাবে কাজ করে?
head pointer working flow
এখন command prompt থেকে দেখি git কিভাবে HEAD manage করে?

১। প্রথমে আমরা দেখি আমাদের folder এ কি কি file আছে?
dir -la command টি ব্যবহার করে আমরা file list গুলো দেখতে পাবো
২। আমরা দেখতে পাচ্ছি .git folder আছে। .git folder এ কি কি আছে সেটা দেখা যাক।
cd .git => dir -la
৩। .git folder এ আমরা দেখতে পাচ্ছি HEAD file টি।
৪। দেখা যাক HEAD file এ কি আছে
HEAD file এ আমরা দেখতে পেলাম একটি location : ref: refs/heads/master
৫। HEAD refer করছে যে location টি আমরা সেই location টিতে দেখি কি আছে
master file টিতে আমরা দেখতে পাবো HEAD যেই commit কে point করছে তার SHA-1 id.
how head pointer store

আগামি পর্বে আমরা দেখবো কিভাবে file add, edit, delete, move and rename করা হয় সে সম্পর্কে

সম্ভাব্য ইন্টার্ভিউ প্রশ্ন
  • Two tree architecture and Three tree architecture কিভাবে কাজ করে?
  • Git working flow বর্ননা।
  • HEAD Pointer কি?
  • HEAD Pointer কিভাবে কাজ করে?
RSS
Facebook
Twitter
LinkedIn

Leave a Reply

Your email address will not be published. Required fields are marked *