কম্পিউটার টিউটোরিয়াল

Git "changes not staged for commit" ব্যাখ্যা

একটি কমিট তৈরি করার আগে, আপনাকে আপনার পরিবর্তন করা ফাইলগুলো সেই কমিটে যোগ করতে হবে। আপনি যখন git status কমান্ড রান করেন ফাইলগুলো কমিটে যোগ করার আগে, আপনি কমান্ডের আউটপুটে changes not staged for commit মেসেজ দেখবেন।

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

changes not staged for commit

একটি Git রিপোজিটরিতে ফাইলগুলো হয় ইগনোরড, স্টেজিং এরিয়াতে, বা একটি কমিটের অংশ।

ইগনোরড ফাইলগুলো একটি Git রিপোজিটরির রেকর্ডে ইনক্লুডেড নয়। স্টেজিং এরিয়াতে থাকা ফাইলগুলো সেগুলো যেগুলো পরবর্তী কমিটে যোগ করা হবে।

স্টেজিং এরিয়া গুরুত্বপূর্ণ কারণ এটি আপনাকে বেছে নেওয়া দেয় কোন ফাইলগুলো একটি কমিটে যোগ করা উচিত এবং কোনগুলো নয়। আপনি যেকোনো সময় কমিট তৈরি করার আগে স্টেজিং এরিয়া থেকে ফাইল যোগ বা রিমুভ করতে পারেন।

এর মানে স্টেজিং এরিয়া একটি ট্রিয়াজ স্পেসের মতো। আপনি যদি বুঝতে পারেন একটি অতিৰিক্ত ফাইল একটি কমিটে যোগ করতে হবে, আপনি সেটি স্টেজিং-এ যোগ করতে পারেন। তারপর, একবার আপনি নিশ্চিত হলে যে আপনি সকল পরিবর্তন স্টেজিং এরিয়াতে যোগ করেছেন, আপনি একটি কমিট তৈরি করতে পারেন।

একটি উদাহরণ পরিস্থিতি

এই মেসেজ পাওয়ার জন্য, আমাদের প্রথমে একটি Git রিপোজিটরিতে একটি ফাইল পরিবর্তন করতে হবে। ধরা যাক আমাদের একটি Git রিপোজিটরি আছে একটি ব্ল্যাঙ্ক ফাইল README.md সহ। আমরা এর কন্টেন্ট পরিবর্তন করব নিচের দেখানোর জন্য:

# Example Repo

৮১% পার্টিসিপেন্ট заяви করেছেন যে বুটক্যাম্পে অংশগ্রহণের পর তাদের টেক জব প্রস্পেক্টস নিয়ে তারা আরও আত্মবিশ্বাসী মনে করছেন। আজই একটি বুটক্যাম্পে ম্যাচ করুন।

গড় বুটক্যাম্প গ্র্যাজুট ক্যারিয়ার ট্রানজিশনে ছয় মাসের কম সময় ব্যয় করেছেন, বুটক্যাম্প শুরু থেকে প্রথম জব পাওয়ার পর্যায়ে।

আমরা আমাদের রিপোজিটরিতে একটি ফাইল পরিবর্তন করেছি। পরবর্তী, আমরা git status কমান্ড রান করব সকল পরিবর্তন করা ফাইলগুলোর একটি সামারি ভিউ করার জন্য:

git status

চলুন দেখি এই কমান্ড কী দেখায়:

On branch master

Your branch is up to date with ‘origin/master’.

Changes not staged for commit:

(use "git add <file>..." to update what will be committed) (use "git checkout -- <file>..." to discard changes in working directory) modified: README.md 

Git কমান্ড লাইন আমাদের বলে আমরা master ব্রাঞ্চ ভিউ করছি এবং আমাদের কারেন্ট ব্রাঞ্চ আমাদের রিমোট ব্রাঞ্চের সাথে আপ টু ডেট। আমরা একটি ফাইল পরিবর্তন করেছি: README.md। এই ফাইলটি এখনো স্টেজিং এরিয়াতে বা একটি কমিটে যোগ করা হয়নি। আমাদের ওয়ার্কিং ডিরেক্টরি মডিফাইড।

এই মেসেজটি যাতে না থাকে, আমাদের README.md ফাইলটি স্টেজিং এরিয়াতে যোগ করতে হবে। আমরা এটি git add কমান্ড ব্যবহার করে করতে পারি:

git add README.md

এই কমান্ড আমাদের সিলেক্টিভলি ফাইল বেছে নেওয়া দেয় একটি কমিটে যোগ করার জন্য। পরবর্তী, আমরা স্টেজিং এরিয়াতে বর্তমানে থাকা পরিবর্তন করা ফাইলগুলো নিয়ে একটি কমিট তৈরি করতে পারি। চলুন git commit রান করি একটি কমিট তৈরি করতে:

git commit -m “docs: Update README.md”

এটি রিপোজিটরির বর্তমান স্টেটের একটি রেকর্ড তৈরি করবে সকল পরিবর্তন সহ যেগুলো আমরা স্টেজিং এরিয়াতে যোগ করেছি। আপনি যদি একটি রিমোট ভার্সন সহ রিপোজিটরি নিয়ে কাজ করেন, আপনি কমিট তৈরি করার পর আপনার কমিটটি রিপোজিটরিতে পুশ করতে চাইতে পারেন:

git push

আমাদের পরিবর্তনটি এখন আমাদের রিপোজিটরির লোকাল এবং রিমোট দুটি ভার্সনে করা হয়েছে।

চলুন আবার git status on branch দেখি:

On branch master Your branch is up to date with 'origin/master'. nothing to commit, working tree clean 

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

উপসংহার

"changes not staged for commit" মেসেজ দেখায় যখন আপনি "git status" কমান্ড রান করেন এবং একটি ফাইল আছে যেটি পরিবর্তন করা হয়েছে কিন্তু এখনো স্টেজিং এরিয়াতে যোগ করা হয়নি।

এটি একটি এরর মেসেজ নয়, বরং একটি নোটিফিকেশন যে আপনার পরিবর্তন করা ফাইলগুলো স্টেজিং এরিয়াতে বা একটি কমিটে নেই। আপনি এই মেসেজটি দূর করতে পারেন আপনার ফাইলগুলো একটি কমিটে যোগ করে এবং সেগুলো একটি রিপোজিটরিতে কমিট করে।
এখন আপনার কাছে वो নলেজ রয়েছে যা আপনাকে এই Git এরর প্রফেশনাল ডেভেলপারের মতো ফিক্স করতে দেবে!


  1. Mac-এ সেরা ৫টি গ্রাফিক্যাল Git ক্লায়েন্ট

  2. Arch Linux-এর জন্য ৫টি সেরা AUR হেল্পার

  3. OneDrive এই ব্যবহারকারীর জন্য প্রোভিশন করা হয়নি ত্রুটি: কারণ এবং সমাধান

  4. সমাধান: ইথারনেটের জন্য DHCP সক্ষম নেই