একটি যেকোনো চেকআউট কমিট যে এক নাম নয় আপনার শাখা আপনি একটি বিচ্ছিন্ন মাথা পেতে হবে। একটি SHA1 যা একটি শাখার ডগা উপস্থাপন করে এখনও একটি বিচ্ছিন্ন হেড দেয়। কেবলমাত্র স্থানীয় শাখার নামের একটি চেকআউট সেই মোডটিকে এড়িয়ে চলে।
একটি বিচ্ছিন্ন হেড সঙ্গে প্রতিশ্রুতিবদ্ধ দেখুন
যখন হেডকে আলাদা করা হয়, নামকরণ করা কোনও শাখা আপডেট না করা বাদে স্বাভাবিকের মতো কাজ করে। (আপনি এটি অনামী শাখা হিসাবে ভাবতে পারেন think)

উদাহরণস্বরূপ, আপনি যদি প্রথমে এটির সন্ধান ছাড়াই কোনও "রিমোট ব্রাঞ্চ" চেকআউট করেন তবে আপনি একটি আলাদা হেড দিয়ে শেষ করতে পারেন।
গিট দেখুন : মাথা বিচ্ছিন্ন না করে শাখা স্যুইচ করুন
গিট 2.23 (আগস্ট 2019) এর সাথে আপনাকে আর বিভ্রান্তিকর git checkoutআদেশ ব্যবহার করতে হবে না।
git switch এছাড়াও একটি শাখা চেকআউট করতে পারে এবং একটি পৃথক হেড পেতে পারে:
- এটির একটি স্পষ্ট
--detachবিকল্প রয়েছে
HEAD~3কোনও নতুন শাখা তৈরি না করে অস্থায়ী পরিদর্শন বা পরীক্ষার জন্য প্রতিশ্রুতিবদ্ধতা পরীক্ষা করতে :
git switch --detach HEAD~3
HEAD is now at 9fc9555312 Merge branch 'cc/shared-index-permbits'
- এটি কোনও দূরবর্তী ট্র্যাকিং শাখা ভুল করে আলাদা করতে পারে না
দেখা:
C:\Users\vonc\arepo>git checkout origin/master
Note: switching to 'origin/master'.
You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by switching back to a branch.
বনাম নতুন git switchকমান্ড ব্যবহার করে :
C:\Users\vonc\arepo>git switch origin/master
fatal: a branch is expected, got remote branch 'origin/master'
যদি আপনি একটি দূরবর্তী শাখা ট্র্যাক করে একটি নতুন স্থানীয় শাখা তৈরি করতে চান:
git switch <branch>
যদি <branch>খুঁজে পাওয়া না যায় তবে <remote>একটি মিলের নামের সাথে একটি দূরবর্তী (কল করুন ) এর সাথে ট্র্যাকিং শাখা উপস্থিত রয়েছে , সমান হিসাবে বিবেচনা করুন
git switch -c <branch> --track <remote>/<branch>
আর কোন ভুল!
আর অবাঞ্ছিত হেড!
branch-name@{n}, এর নবম পূর্ববর্তী অবস্থানbranch-name। তবে যাই হোক না কেন, এক পর্যায়ে অবশ্যই একটি হয়েছেgit checkout <rev>। যদি এটি কোনও ঘণ্টা বাজায় না, তবে সম্ভবত আপনি যা করেছেন উল্লেখ করেছেন - যা করার চেষ্টা করেছেনgit checkout <file>এবং দুর্ঘটনার দ্বারা একটি সংশোধন নির্দিষ্ট করতে সক্ষম হয়েছেন।