ফাইলের লিঙ্ক লিঙ্ক ব্যর্থ


169

আমি গিট টানতে চেষ্টা করছি এবং আমি নিম্নলিখিত ত্রুটি পেয়েছি:

ফাইল 'লিব / এক্সএক্সএক্সএক্স.জার' এর লিঙ্ক লিঙ্ক ব্যর্থ হয়েছে। আমার আবার চেষ্টা করা উচিত? (Y / N)

আমি y বা n সিলেক্ট করি না কেন, আমি যেখানে টানতে পারি বা ধাক্কা দিতে পারি সেখানে পৌঁছানো সম্ভব নয়।


আপনি কি সেই ফাইলটিতে লেখার অধিকার আছে কিনা তা পরীক্ষা করে দেখেছেন?
রাফেল মিশেল

1
ডান chmodএবং / অথবা chownউপরের ফাইলটি চালান ।
না_এ_গল্ফার

আমার অধিকার থাকা উচিত, অন্যথায় আমি এটিকে ছেঁকে / ছোড করব!
মার্কো


উত্তর:


204

এর অর্থ সাধারণত কোনও প্রক্রিয়া এখনও সেই নির্দিষ্ট ফাইলটি ব্যবহার করে (এটিতে এখনও একটি হ্যান্ডেল রয়েছে)
(উইন্ডোজে, এই ProcessExplorerজাতীয় প্রক্রিয়াটি ট্র্যাক করার ক্ষেত্রে ভাল)

আপনার অন্যান্য প্রোগ্রাম বন্ধ করার চেষ্টা করুন, এবং আপনার আবার চেষ্টা করুন git pull

নোট করুন যে GIT_ASK_YESNOভেরিয়েবলের সাথে আপনার বিকল্প রয়েছে ।


জানুয়ারী 2019 আপডেট করুন:

এটি আরও দৃ fixed় হওয়া উচিত, গিট ২.২১ (Q1 2019) এর সাথে, " git gc" এবং " git repack" অপসারণের আগে অপ্রয়োজনীয় যে উন্মুক্ত প্যাকফাইলগুলি বন্ধ করে নি সেগুলি খোলা ফাইল অপসারণে অক্ষম প্ল্যাটফর্মে কাজ করে না।
এটি সংশোধন করা হয়েছে।

দেখুন কমিট 5bdece0 দ্বারা (15 ডিসেম্বর 2018) জোহানেস Schindelin ( dscho)
( জুনিও সি হামানো দ্বারা মার্জড - gitster- মধ্যে 5104f8f কমিট , 18 জানুয়ারী 2019)

gc/ repack: প্রয়োজন হলে রিলিজ প্যাকগুলি

উইন্ডোজে, এখনও কোনও প্রক্রিয়া দ্বারা পরিচালিত হ্যান্ডলগুলি থাকলে ফাইলগুলি সরানো বা পুনরায় নামকরণ করা যায় না।
যে প্রতিকার করতে, আমরা close_all_packs()ফাংশন চালু ।

এর আগে, আমরা নিশ্চিত করেছিলাম যে প্যাকগুলি ঠিক আগে প্রকাশিত হয়েছিল git gc স্প্যানড , যদি gcআর প্রয়োজনের প্যাকগুলি অপসারণ করতে চায় wants

তবে এই বিকাশকারী তা ভুলে গিয়েছিলেন gc নিজেই প্যাকগুলিও ছাড়তে হবে, যেমন --aggressiveবিকল্পের মাধ্যমে সমস্ত প্যাকগুলি একীকরণ করার সময় ।

একইভাবে, git repack -d অপ্রচলিত প্যাকগুলি মুছতে চায় এবং তাই সমস্ত প্যাক হ্যান্ডলগুলিও বন্ধ করতে হবে।


জানুয়ারী ২০১ Update আপডেট করুন

এটি গিট 2.8 (মার্চ 2016) এ স্থির করা উচিত (এবং নীচে গিট 2.19, কিউ 3 দেখুন)

দেখুন কমিট ডি562102 , কমিট ডিসিএসিবি 1 বি , কমিট ডিএফ 617 বি 5 , কমিট 0898c96 (13 জানুয়ারী 2016) জোহানেস dschoশিন্ডেলিন ( )
(দ্বারা একীভূত junio সি Hamano - gitster- মধ্যে কমিট 3c80940 26 জানুয়ারী 2016)

fetch: আবর্জনা সংগ্রহের আগে প্যাক ফাইলগুলি ছেড়ে দিন

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

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

এটি git-for-widows500 ইস্যু ঠিক করে ।

সেই নতুন পদ্ধতির বৈধতা দেওয়ার জন্য ব্যবহৃত পরীক্ষার দিকে তাকানো, একটি সম্ভাব্য কাজ (যেহেতু গিট ২.৮ এখনও আউট হয়নি) কৃত্রিমভাবে উত্থাপন করবে gc.autoPackLimit

git config gc.autoPackLimit 10000
git fetch
git config gc.autoPackLimit 50 # default value

গিট ২.৮.৪ (জুন ২০১)) 755 ইস্যুর উল্লেখ করেছে যা সমস্যাটিও লাঘব করতে পারে ( 2db0641 কমিট করুন ):

অস্থায়ী ফাইল হ্যান্ডলগুলি শিশু প্রক্রিয়াগুলির দ্বারা উত্তরাধিকার সূত্রে প্রাপ্ত নয় তা নিশ্চিত করুন


প্রকৃতপক্ষে, উপরে উল্লিখিত git-for-windows500 ইস্যুটি সত্যই গিট 2.19, কিউ 3 2018 এর সাথে স্থির হয়েছে
See দেখুন " গিট - ফাইলের লিঙ্ক .idxএবং লিঙ্ক .packব্যর্থ হয়েছে (এই ফাইলটির একমাত্র প্রক্রিয়া মালিকানাধীন হ্যান্ডেলটি হ'ল git.exe) "


5
সম্ভবত সেই জার-ফাইলটি ব্যবহার করে কোনও জেভিএম চলছে।
থরবজর্ন রাভন অ্যান্ডারসন

2
আমার ক্ষেত্রে এটি স্কাইপ ছিল। আমি আগে ফাইলটি অন্যের কাছে হস্তান্তর করেছি এবং কিছু এখনও স্বীকৃত বা বাতিল হয়নি।
বিবেক কোডিরা

6
আমি উইন্ডোজ এক্সপ্লোরারকে অপরাধী হিসাবে পেয়েছি। এটি সম্ভবত টর্টোজাইজিটের আইকন ওভারলে বা টিজিট ক্যাশের কারণে হয়েছিল। সমস্ত উন্মুক্ত ফোল্ডার বন্ধ করে দেওয়ার কৌশলটি করেছে, তবে আপনাকে কেবলমাত্র প্রজেক্ট ফোল্ডারটি খোলার প্রয়োজন হতে পারে।
অ্যালান বোঘ

4
আমার ক্ষেত্রে এটি VS2013 ছিল কারণ এটি উন্মুক্ত সমাধানের সাথে আবদ্ধ ছিল।
ব্রাদারঅডিন

2
এক্সপ্লোরারআরএক্সএই আমার সমস্যা ছিল - আমার কাছে টরটোইজিট নেই। আমি টাস্ক ম্যানেজার থেকে এক্সপ্লোরারএক্সএইকে মেরেছি এবং সিটিআরএলএলটি-ডিলিট => টাস্ক ম্যানেজার => ফাইল => নতুন টাস্ক চালান => "এক্সপ্লোরার
এক্সেক্স

57

এটি একটি উইন্ডোজ নির্দিষ্ট উত্তর, তাই আমি জানি যে এটি আপনার পক্ষে প্রাসঙ্গিক নয় ... আমি কেবল ভবিষ্যতের সন্ধানকারীদের সুবিধার্থে এটি অন্তর্ভুক্ত করছি।

আমার ক্ষেত্রে, এটি ছিল কারণ আমি নন-এলিভেটেড কমান্ড লাইন থেকে গিট চালাচ্ছিলাম। "প্রশাসক হিসাবে চালান" এটি আমার জন্য স্থির করে।


4
উইন্ডোজ 7 এ এই সমস্যাটি আমি আঘাত করেছি যখন একটি টান এবং গিট একটি অটো প্যাক করেছিল। এটি "আইডিএক্স" ফাইলগুলিতে অভিযোগ করেছে। আমি তখন প্রশাসক হিসাবে কনসোল উইন্ডোটি খুললাম এবং গিট গিসি চালিয়েছিলাম এবং কোনও সমস্যা হয়নি। সুতরাং এটি একটি ভাল সমাধান।
23:34

1
git gc আমার জন্য এটি উইন্ডোজ on এ করেছিল It এটি ঘটেছে খ / সি আমি ওয়েবসটর্মের উপর চাপ দেওয়ার সময় সেন্টিমিডারের উপর একটি গিট টান করছিলাম
আলেসান্দ্রো

2
কি দারুন. ধন্যবাদ নীলড এটা আমার জন্য এটি স্থির করে। উইন্ডোতে আরও কিছুটা জিআইটি পোর্ট করা ভাল হবে।
মার্টিন ডোবাক

ভাল ... এটি 6 বছর আগে প্রয়োজন ছিল। এখন? কে জানে? ¯_ (ツ) _ / ¯
নিলড

30

আমার জন্য, ভিজ্যুয়াল স্টুডিওটি টান থেকে পরিবর্তিত সমস্ত ফাইল পুনরায় লোড করার চেষ্টা করছিল। ভিজ্যুয়াল স্টুডিও রিফ্রেশ করুন, তারপরে চালান git gc


3
আমার জন্য অনুরূপ। গিট জিসি চালানোর আগে গ্রহনটি বন্ধ করা দরকার।
আলফোকস

5

উইন্ডোজে উইন্ডোজের জন্য গিটহাব ব্যবহার করে, শেল চলার সময় আমি একই ধরণের ত্রুটি পেয়েছি git gc:

Unlink of file '.git/objects/pack/pack-0b40ae7eae9b83edac62e19c07ff7b4c175244f6.idx' failed. Should I try again? (y/n)

আমি গিটহাব জিইউআই বন্ধ করে এটি সমাধান করেছি।


2

আপনাকে অ্যাপাচি বা অন্যান্য ওয়েব সার্ভার পুনরায় চালু করার চেষ্টা করুন কারণ এটি আপনার কিছু ফাইল লক করে রেখেছে।


2

ভিজ্যুয়াল স্টুডিও এবং রুবাইমিন বন্ধ করে দিয়ে আবার ত্রুটিটি পেল না। তাদের মধ্যে একজন অপরাধী ছিলেন।



1

আমিও এই সমস্যাটি পেয়েছি, তবে আমি জানতে পেরেছিলাম যে এটি আলট্রাএডিট ছিল পথে, যেহেতু আমি ইউইইটি ব্যবহার করে আমার গ্রহন কর্মক্ষেত্রটি পরিচালনা এবং সম্পাদনা করছিলাম ~~

সম্ভবত নির্দিষ্ট ফাইলটির পুরানো সংস্করণে ইউইয়ের একটি হ্যান্ডেল রয়েছে বলে, গিট এটিকে লিঙ্কমুক্ত করতে পারেনি।

আমি আল্ট্রাএডিট বন্ধ করার পরে, সমস্যা আর কখনও ঘটেনি।



0

সমস্যাটি হ'ল কারণ আপনার কাছে এমন কিছু প্রোগ্রাম রয়েছে যা এই ফাইলগুলি পরিচালনা করে। আমার একটি পরামর্শ আছে যে প্রোগ্রামটি এটি পরিচালনা করছে তা সন্ধান করতে আপনার আনলককারীটি ব্যবহার করা উচিত:

আনলক


0

উইন্ডোজ এক্সপি-তে আমার এই ঘটনা ঘটেছে, উভয়ই বার্তাটি লুপে আটকে রেখে এবং উত্তর দিয়ে সাফ করতে সক্ষম হয়েছিল।

আটকে যাওয়া-এ-লুপের ঘটনাটি গিট-জিইউআই বন্ধ করে সাফ করা হয়েছে। (আমি বাশ শেলের মধ্যে গিট মার্জ -i চালাচ্ছিলাম))

অন্যান্য ঘটনাগুলি সম্ভবত আমার সংগ্রহস্থলের বড় সংখ্যক ফাইলের কারণে ঘটেছিল। এটি মূলত .cod ফাইলগুলির সাথে ঘটেছিল, যা আমি পরে সংস্করণ নিয়ন্ত্রণ থেকে বাদ দিই। (আমার কাছে এগুলি নিখুঁতভাবে অনুসরণ করার কারণ রয়েছে have) আমি বিশ্বাস করি যে কারণটি গিট ফাইল হ্যান্ডলগুলি যে হারে ব্যবহার করে তার সাথে সম্পর্কিত হতে পারে।

আমি অবাক হয়েছি যে-পরিষ্কার-পরিস্কার-দ্বারা-জবাবদিহিত সমস্যাটি যদি উইন্ডোজ সম্পর্কিত হয় তবে পূর্ববর্তী দুটি পোস্টার উইন্ডোজের কথা উল্লেখ করেছে এবং কেউই বলেনি যে তারা অন্যান্য অপারেটিং সিস্টেম নিয়ে সমস্যা আছে।


0

আমার পিএইচপিএসটারম খোলা ছিল, এটি বন্ধ ছিল এবং সবকিছু ঠিক আছে।


0

আমার একই সমস্যা ছিল এবং আমি উইন্ডো টাস্ক ম্যানেজারের সাথে সম্পর্কিত সমস্ত প্রোগ্রাম বন্ধ করে দিয়েছি। তবে, এটি এখনও কাজ করে না। মজার অংশটি হ'ল আমি "গিট পুল" এর পরিবর্তে "গিট রিবেস" চালিয়েছিলাম এবং এটি কার্যকর হয়েছিল!


0

উপরের উত্তরগুলির কোনওটিই আমার পক্ষে কাজ করে না, তবে আমি গিট জিসি কমান্ডটি ফোর্স অপশন সহ চালনা করি এবং এটি আমার কেস সমাধান করে।

'গিট জিসি - ফোর্স'

[উইন্ডোজ,, প্রশাসক হিসাবে চালান => কমান্ড প্রম্পট]


0

প্রশাসনিক মোডে কমান্ড লাইন সম্পাদক চালানোর চেষ্টা করুন এবং কমান্ড চালান। এটি সমস্যাটি সমাধানে সহায়তা করে। :)


0

আমার ক্ষেত্রে সমস্যাটি তৈরি করার জন্য আমার কাছে ছাঁটাই করার একটি পুরানো পদ্ধতি ছিল। আমি আসলটি আনসেট করে সমাধান করেছি:

git config --global --unset remote.origin.fetch '\+refs/tags/\*:refs/tags/\*'

তারপরে এটি সার্ভারের মুছে ফেলা শাখাগুলি ছাঁটাইতে যুক্ত করুন:

git config --global fetch.pruneTags true

0

আমি একই ত্রুটির মুখোমুখি হয়েছি এবং ফাইলটি ব্যবহৃত হচ্ছিল বলে গ্রহনটি বন্ধ করে আবার টেনে নিয়ে সমাধান করেছি।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.