এখানে gitglossary থেকে একটি খালি ভাণ্ডার সংজ্ঞা :
একটি খালি সংগ্রহস্থল সাধারণত একটি .git প্রত্যয় সহ একটি যথাযথ নামযুক্ত ডিরেক্টরি যা সংশোধন নিয়ন্ত্রণের অধীনে থাকা ফাইলগুলির স্থানীয়ভাবে চেক-আউট কপি থাকে না। অর্থাৎ, সমস্ত গিট প্রশাসনিক এবং নিয়ন্ত্রণ ফাইল যা সাধারণত লুকানো .git সাব ডিরেক্টরিতে উপস্থিত থাকে কেবল পরিবর্তে repository.git ডিরেক্টরিতে উপস্থিত থাকে এবং অন্য কোনও ফাইল উপস্থিত এবং চেক আউট হয় না। সাধারণত পাবলিক ভান্ডারগুলির প্রকাশকগণ খালি সংগ্রহস্থল সরবরাহ করে।
আমি এখানে পৌঁছেছি কারণ আমি একটি "স্থানীয় সংগ্রহস্থল" নিয়ে ঘুরে বেড়াচ্ছিলাম এবং আমি যা খুশি তাই করতে সক্ষম হচ্ছিলাম যেন এটি একটি দূরবর্তী সংগ্রহস্থল it আমি কেবল চারপাশে খেলছিলাম, গিট সম্পর্কে জানার চেষ্টা করছিলাম। আমি ধরে নেব যে এই উত্তরটি যে পড়তে চায় তার পক্ষে এই অবস্থা।
আমি একটি বিশেষজ্ঞ মতামত বা কিছু নির্দিষ্ট পাল্টা উদাহরণের জন্য চাই তবে এটা মনে হচ্ছে যে কেবল ফাইল যাচ্ছে (যে আমি দেখেছি কিছু Git সোর্স কোড মাধ্যমে rummaging পরে) .git/config
এবং সেটিং কোর এট্রিবিউট বেয়ার করার সত্য , Git আপনাকে যা করতে দেওয়া হবে যাই হোক না কেন আপনি সংগ্রহস্থল থেকে দূরবর্তীভাবে করতে চান। অর্থাৎ নিম্নলিখিত লাইনগুলি উপস্থিত থাকতে হবে .git/config
:
[core]
...
bare = true
...
(কমান্ডটি প্রায় এটিই git config --bool core.bare true
করবে যা সম্ভবত আরও জটিল পরিস্থিতি মোকাবেলা করার পরামর্শ দেওয়া হয়)
এই দাবির পক্ষে আমার সমর্থনযোগ্যতা হ'ল, গিট সোর্স কোডে, রেপো খালি বা না থাকলে পরীক্ষার দুটি ভিন্ন উপায় বলে মনে হয়। একটি হ'ল গ্লোবাল ভেরিয়েবল পরীক্ষা করে is_bare_repository_cfg
। এটি কার্যকর করার কয়েকটি সেটআপ পর্বের সময় সেট করা থাকে এবং .git/config
ফাইলটিতে পাওয়া মান প্রতিফলিত করে । অন্যটি একটি ফাংশন is_bare_repository()
। এখানে এই ফাংশন সংজ্ঞা:
int is_bare_repository(void)
{
/* if core.bare is not 'false', let's see if there is a work tree */
return is_bare_repository_cfg && !get_git_work_tree();
}
আমি সময় কিংবা দক্ষতার পরম আত্মবিশ্বাসের সঙ্গে বলতে না করেছি, কিন্তু যতদূর আমি বলতে পারতাম হিসাবে আপনি আছে যদি bare
করতে অ্যাট্রিবিউট সেট true
মধ্যে .git/config
, এই সবসময় ফেরত পাঠাবেন 1
। বাকি কাজটি সম্ভবত নিম্নলিখিত পরিস্থিতির জন্য:
- কোর.বেয়ার অপরিজ্ঞাত (যেমন সত্য বা মিথ্যা নয়)
- কোনও ওয়ার্ক্রি নেই (যেমন .git উপ-ডিরেক্টরিটি মূল ডিরেক্টরি)
আমি পরে যখন এটি করতে পারি তখন এটি ব্যবহার করব, তবে এটির মাধ্যমে মনে হবে যে কোর.বারে = সত্য নির্ধারণ করা কনফিগার ফাইল থেকে কোর.বারে অপসারণ এবং ডিরেক্টরিগুলি সঠিকভাবে সেট আপ করার সমতুল্য ।
যে কোনও হারে, কোর.বারে = সত্য নির্ধারণ করা আপনাকে অবশ্যই এটির দিকে চাপ দিতে দেবে, তবে আমি নিশ্চিত নই যে প্রকল্পের ফাইলগুলির উপস্থিতি অন্য কিছু ক্রিয়াকলাপকে খারাপ করে দেবে কিনা। এটি আকর্ষণীয় এবং আমি মনে করি সংরক্ষণাগারটিতে চাপ দেওয়া এবং স্থানীয়ভাবে কী ঘটেছিল তা দেখতে (যেমন চালানো git status
এবং ফলাফলগুলি বোঝার জন্য) শিক্ষণীয় supp
mv repo/.git repo.git; rm -rf repo