प्रोजेक्ट फ़ाइल का नाम बदल दिया गया है या आपके कंप्यूटर पर नहीं है


150

मुझे यह त्रुटि तब मिली जब मैंने TFS स्रोत नियंत्रण से VS 2008 प्रोजेक्ट लोड करने का प्रयास किया:

प्रोजेक्ट फ़ाइल को स्थानांतरित कर दिया गया है, नाम बदला गया है या आपके कंप्यूटर पर नहीं है

ओके पर क्लिक करने के बाद परियोजना "अनुपलब्ध" कहती है। समस्या क्या है? मैं इसका कैसे समाधान करूं? मुझे पहले कभी यह समस्या नहीं हुई थी। कुछ ब्लॉग्स ने .suo फ़ाइल को हटाने के लिए कहा था, लेकिन मैं .suo फ़ाइल का पता नहीं लगा सकता। मैंने अपने स्थानीय कंप्यूटर पर पूरी परियोजना को हटा दिया, ताकि अगली बार इसे खोलने पर एक नया निर्माण हो, लेकिन मुझे अभी भी वही त्रुटि मिली है।


28
ओह, मुझे ये सिरदर्द देने के लिए मैं टीएफएस से कैसे नफरत करता हूं!
जॉन लीडग्रेन ने

2
नीचे जाएं, आपको यहां सही उत्तर मिलेगा।
क्लॉडियस

जवाबों:


270

आम तौर पर इसे ठीक करने में जो मदद करता है वह समाधान उपयोगकर्ता विकल्प उर्फ ​​"SUO" को हटा रहा है।

2013 तक वी.एस.

पुराने वीएस में इसे SolutionName.suoमुख्य .slnफ़ाइल के समान फ़ोल्डर में "छिपी" के रूप में संग्रहीत किया जाता है ।

VS2015 या बाद का

VS2015 में एक ही डेटा को .vsमुख्य .slnफ़ाइल के समान फ़ोल्डर के तहत "छिपा हुआ" फ़ोल्डर में ले जाया गया था ।


6
+1। बहुत दुर्भाग्यपूर्ण त्रुटि संदेश है - यह वास्तव में सबसे अधिक संभावना पैदा होती है जब आप अपने एससीसी प्रदाता के अनुसार फ़ाइलें स्थानांतरित कर दिया है "सही" जिस तरह से। (उदाहरण के लिए TFS के लिए 'tf rename' का उपयोग करते हुए) डिस्क w / o को TFS बताने वाली परियोजना को आगे बढ़ाते हुए, या एक sln / csproj फ़ाइल को अपडेट करने के लिए भूल जाने पर, मेरे अनुभव में विभिन्न त्रुटि संदेश आएंगे। SUO फाइलें अपारदर्शी होती हैं, इसलिए जब तक आप अपने सिर को खरोंच नहीं करते, तब तक आप अपने सिर को खरोंचते रहते हैं।
रिचर्ड बर्ग

8
यह मेरा दिन बचाता है;)
कामिल लाच

44
.Suo फ़ाइल को हटाने के बाद Visual Studio को पुनः आरंभ करना न भूलें
orandov

8
ओह। तो अब .suo फ़ाइल छिपी हुई है। क्यों? ओह, मुझे पता है क्यों। हम डेवलपर्स रहे हैं और स्पष्ट रूप से खुले में ;-) बाहर .suo फ़ाइल को देखने के साथ जोड़ा जटिलता से निपटने में सक्षम नहीं हैं
टॉर्बेन Rahbek कोच

29
यह Visual Studio 2015 में भी काम करता है, हालांकि .suo फ़ाइल का पथ बदलकर <SolutionFolder> \ _ vs \ <SolutionName> \ v14 \ .suo हो गया है।
ग्रेग एम।

38

मैं सिर्फ एक परियोजना का नाम बदलने के बाद वीएस 2013 का उपयोग करके इस मुद्दे में भाग गया। स्टेनली के जवाब ने मुझे समाधान के लिए निर्देशित किया:

VS बंद करें - .suo फ़ाइल हटाएं - फिर से VS प्रारंभ करें।


1
मैं गलत हो सकता है, लेकिन मुझे नहीं लगता कि मैंने भी .SUO फ़ाइल देखी, जब तक मैंने VisualStudio को बंद नहीं किया।
माइकल आर

5
बस जोड़ना चाहते हैं - अनिवार्य है कि आप इसे हटाने से पहले वी.एस. को बंद कर दें। वीएस अभी भी खुला है, जबकि फ़ाइल को हटाना, फिर बंद करने और फिर से खोलने का कोई प्रभाव नहीं है। पहले बंद करना होगा!
विज़लोक

23

.Suo फ़ाइल को एक विशेष तरीके से हटाएं।

  1. जब आप छिपी हुई .suo फ़ाइल को हटाते हैं तो समाधान खुला नहीं होता है।
  2. VisualStudio पुनरारंभ करें।
  3. समाधान खोलें और त्रुटि संदेश के बिना प्रोजेक्ट जोड़ें।

मेरे लिए विजुअल स्टूडियो 2019 काम किया। केवल आप छिपे हुए .vsफ़ोल्डर को हटा दें
user919426

11

टीएफएस अधिकांश स्रोत नियंत्रण पैकेजों की तरह काम करता है: यह याद रखता है कि इसे आपके कंप्यूटर पर क्या रखा गया है ताकि जब आप "नवीनतम प्राप्त करें" तो इसे केवल आपके अंतिम "गेट" के बाद से ही सब कुछ प्राप्त करने के बजाय chnages प्राप्त करना पड़े।

इसके पास एक चेतावनी है: यदि आप अपनी डिस्क पर स्थानीय फ़ाइलों को हटाते हैं या उनका नाम बदल देते हैं, तो TFS को यह पता नहीं चलेगा कि आपने ऐसा किया है, और यह अभी भी सोचेगा कि वे वहीं हैं जहाँ उन्होंने उन्हें छोड़ा था।

यदि आप "नवीनतम प्राप्त करें" तो यह लापता फ़ाइलों को अपडेट करने के लिए परेशान नहीं करेगा।

फिर आपको TFS और फ़ाइलों को खोजने वाले किसी भी अन्य टूल से "लापता फ़ाइल" त्रुटियों के सभी प्रकार प्राप्त होने की संभावना है।

इसके आसपास जाने के लिए, आपको निम्न करने की आवश्यकता है:

  • अगर आपको लगता है कि आपके पास कोई भी बदलाव हो सकता है, जिसे आप खोना नहीं चाहते हैं, तो अपने पीसी पर स्रोत फ़ोल्डर को बस बैक अप के मामले में कॉपी करें!
  • प्रोजेक्ट (समाधान एक्सप्लोरर में) या फ़ोल्डर (स्रोत नियंत्रण में) पर राइट क्लिक करें
  • संदर्भ मेनू से "विशिष्ट संस्करण प्राप्त करें" चुनें
  • "नवीनतम संस्करण" प्राप्त करने के लिए चुनें और उस विकल्प पर टिक करें जो कुछ कहता है (जैसे कुछ) "अपने कार्यक्षेत्र में पहले से ही फ़ाइलों की शक्ति प्राप्त करें", जो टीएफएस को बताता है कि वह "जो जानता है" के बारे में भूल जाएं और वैसे भी सभी फाइलें फिर से प्राप्त करें।

यदि आपके पास कोई स्थानीय रूप से बदली हुई (लिखने योग्य) फाइलें हैं, तो सावधान रहें। एक दूसरा विकल्प है जो आपके बदलावों को खोते हुए इन्हें अधिलेखित कर देगा। लेकिन आपके पास बैकअप है, इसलिए आपको सुरक्षित होना चाहिए। इस विकल्प पर टिक करने के लिए आम तौर पर बेहतर है कि यह सुनिश्चित करें कि आपके सभी स्रोत कोड पूरी तरह से अद्यतित हैं। (लेकिन स्पष्ट रूप से केवल अगर आप किसी भी स्थानीय परिवर्तन को खोने का मन नहीं रखते हैं!)

जब आप ठीक करते हैं, तो यह प्रोजेक्ट की सभी फ़ाइलों को जबरन आपके स्थानीय ड्राइव पर लाएगा, और समस्या को ठीक करना चाहिए।


मैंने "विशिष्ट संस्करण प्राप्त किया" और "स्थानीय मिलान सर्वर" भले ही सभी फ़ाइलों को अधिलेखित कर दिया। कोई त्रुटि नहीं है, लेकिन कुछ भी नहीं आया। मैंने दूसरे कंप्यूटर से जांच की और परियोजना टीएफएस में है और दूसरा व्यक्ति उस पर ठीक काम कर सकता है।
साइनस

BTW मेरा स्थानीय स्रोत फ़ोल्डर पूरी तरह से EMPTY है। इसमें कुछ भी नहीं है। मैंने शुरू में सभी फ़ाइलों को हटा दिया ताकि मुझे सभी नए मिल सकें। एक नया प्रोजेक्ट खोलना पसंद है।
पापी

1
उस स्थिति में, अगली चीज जो मैं जांचता हूं वह आपका कार्यक्षेत्र मैपिंग होगी। टीम एक्सप्लोरर में, स्रोत नियंत्रण आइकन पर डबल क्लिक करें और दिखाई देने वाली खिड़की के शीर्ष पर एक ड्रॉप-डाउन कॉम्बो बॉक्स है। इसे नीचे छोड़ें और "कार्यस्थान जोड़ें / संपादित करें" चुनें। अपने कार्यक्षेत्र को संपादित करें और जांचें कि आपके कोड वाली TFS परियोजना में आपके स्थानीय हार्ड ड्राइव पर संबंधित फ़ोल्डर है। और सुनिश्चित करें कि आप इस फ़ोल्डर को देख रहे हैं जब आप समाधान को लोड करने का प्रयास करते हैं। (संकेत: अपने सेटअप की तुलना दूसरे डेवलपर के साथ करें जो समस्या के स्रोत को ट्रैक करने की कोशिश करता है)
जेसन विलियम्स

9

हालांकि यह अच्छी तरह से ज्ञात वी.एस. दोष है, निश्चित रूप से हम इसे संभाल सकते हैं!

  • संपादन मोड में समाधान फ़ाइल खोलें

  • संशोधित / स्थानांतरित भौतिक पथ से मेल खाने के लिए सापेक्ष पथ को संशोधित करें ..

    SccProjectUniqueName1 = Source\\Order\\Order.csproj
    SccProjectName1 = Order.ApplicationService
    SccLocalPath1 = Order.ApplicationService
    
  • इसके अलावा, संदर्भित परियोजना के लिए सही सापेक्ष पथ का निर्माण

    Project("{asdasd-301F-11D3-BF4B-asdasd}") = "Order",
            "Source\Order\Order.csproj", "{E25641BC-C990-40E2-8876-08AE8728F763}"
    EndProject
    

6

.Sln के बजाय .csproj या .vbproj खोलने का प्रयास करें जो संभवतया हुआ है, वह है .sln (समाधान) फ़ाइल में कंपोजिट प्रोजेक्ट (ओं) के लिए एक पूर्ण फ़ाइल संदर्भ (सापेक्ष पथ के बजाय) है। आपको .sln को फिर से बनाने या उसे संपादित करने की आवश्यकता हो सकती है।


मैं .vbproj फ़ाइल को खोलने का प्रयास करता हूं और यही मुझे मिलता है। "चयनित फ़ाइल को समाधान या परियोजना के रूप में नहीं खोला जा सकता। कृपया समाधान फ़ाइल या प्रोजेक्ट फ़ाइल का चयन करें" कृपया .sln फ़ाइल को फिर से बनाने के लिए कैसे रखें। यह मेरे लिए नया है। धन्यवाद
sineas

धन्यवाद! Csproj फ़ाइलों को खोला, बाहर निकलने पर एक नई .sln फ़ाइल बनाने / सहेजने के लिए कहा और पुराने को अधिलेखित कर दिया!
राफेल

5

मेरे लिए सबसे आसान विकल्प है:

  1. प्रोजेक्ट पर राइट-क्लिक करें और "लोड नहीं हुआ" या "अनुपलब्ध" प्रोजेक्ट निकालें
  2. समाधान पर राइट क्लिक करें और "मौजूदा परियोजना" जोड़ें

मैंने यह कोशिश की है, लेकिन अभी भी वही त्रुटि है, इस बेवकूफ त्रुटि को बर्दाश्त नहीं कर सकता (वास्तव में एक बग, मैं इस तरह के बुरा बग को स्वीकार नहीं कर सकता, अत्यंत गोपनीय)।
होपलेस

1
सिंपल और स्ट्रेट ... मिल गया।
सारथ मोहनदास

3

मेरे मामले में, .suo फ़ाइल को हटाना अपर्याप्त था। मुझे पता चला कि मेरे कार्यक्षेत्र कॉन्फ़िगरेशन में त्रुटि थी। मैंने इन चरणों के साथ समस्या का पता लगाया और हल किया:

  1. टीम एक्सप्लोरर में, "कार्यस्थान प्रबंधित करें ..."

    यहाँ छवि विवरण दर्ज करें

  2. "संपादित करें ..." पर क्लिक करें

    यहाँ छवि विवरण दर्ज करें

  3. "स्थानीय फ़ोल्डर" के तहत मान को ठीक करें

    यहाँ छवि विवरण दर्ज करें

  4. अंत में, स्वीकृत उत्तर के अनुसार प्रभावित .suo फ़ाइलों को हटा दें।


2

मुझे एक नई सॉल्यूशन sln फाइल बनाना सबसे आसान लगा।


1

अपना कार्यक्षेत्र मैपिंग साफ़ करें (फ़ाइल -> स्रोत नियंत्रण -> कार्यस्थान)। कार्यक्षेत्र को संपादित करें और या तो सभी मैपिंग (अधिक नतीजे) को हटा दें या इस सर्वर पथ से संबंधित एक को ढूंढें। फिर सोर्स कंट्रोल एक्सप्लोरर खोलें और रीमैप करें। सोर्स कंट्रोल एक्सप्लोरर में SLN पर डबल क्लिक करें और इसे लेटेस्ट मिलना चाहिए। पूरी तरह से निश्चित नहीं है कि क्या हुआ है या आप किस राज्य में जाने में कामयाब रहे हैं, लेकिन इसके साथ आपको फिर से आगे बढ़ना चाहिए।


1

मैं इस मुद्दे में भाग गया और .rptprojएक सहकर्मी से फाइलें प्राप्त करके और उन्हें अपने स्थानीय निर्देशिका में कॉपी करके हल करने में सक्षम था । परियोजना फिर से लोड करने में सक्षम थी।


1

मैंने इस समस्या को हल करने के लिए बहुत समय बिताया। मैंने ये चरण किए: प्रोजेक्ट का नाम बदलें, नाम बदलें, प्रोजेक्ट फ़ोल्डर का नाम बदलें, संपादित करें .sln फ़ाइल, छिपा हुआ .sun फ़ाइल संपादित करें। प्रोजेक्ट लोड किया गया लेकिन यह TFS के लिए अपरिचित था! अंत में मुझे यह मार्गदर्शिका मिली ।

यदि आप Resharper और TFVC का उपयोग कर रहे हैं तो आपका संस्करण नियंत्रण है, इन चरणों का पालन करें:

  • समाधान एक्सप्लोरर में प्रोजेक्ट को राइट-क्लिक करें, नाम बदलें का चयन करें, और नया नाम दर्ज करें

  • प्रोजेक्ट पर फिर से राइट-क्लिक करें और गुण चुनें। एप्लिकेशन टैब पर "असेंबली का नाम" और "डिफ़ॉल्ट नाम स्थान" बदलें।

  • प्रोजेक्ट को फिर से राइट-क्लिक करें और Refactor -> Namespaces को एडजस्ट करें। परिवर्तनों को स्वीकार करें।

  • असेंबलीटाइट और असेंबलीप्रोडक्ट को गुण / असेंबलीइन्फो .cs में बदलें

  • Windows Explorer में बिन और obj निर्देशिकाओं को हटा दें

  • स्रोत नियंत्रण एक्सप्लोरर खोलें और परियोजना की निर्देशिका का नाम बदलें। इससे घोल बंद हो जाएगा। इसे बंद होने दो।

  • एसएलएन फ़ाइल खोलें (एक पाठ संपादक जैसे नोटपैड ++ के साथ) और परियोजना का पथ बदलें (इसमें कई स्थान होने चाहिए)।

  • फिर से समाधान खोलें। स्वच्छ और परियोजना का पुनर्निर्माण।


0

अनुपलब्ध परियोजना पर राइट क्लिक करें और प्रोजेक्ट फ़ाइल को संपादित करें ... संभावना है, आपको एक हार्डकोड फ़ाइल पथ या एक वर्चुअल एक मिलेगा जो उस मैच से मेल नहीं खाता है जहाँ आपने प्रोजेक्ट की जाँच की थी।

दयालुता,

सज्जन


2
संपादित करें विकल्प नहीं है। इसकी एकमात्र पुनः लोड परियोजना, कट और निकालें।
पापी

0

इसके लिए समाधान

  1. फिर से प्रोजेक्ट फ़ोल्डर का नाम बदलें
  2. विशिष्ट संस्करण सेट करें और TFS में बल प्राप्त करें
  3. नवीनतम फ़ोल्डर में केवल और छिपा हुआ विकल्प हटाएं (नाम बदलें नहीं)
  4. अब आप बिना किसी मुद्दे के परियोजना खोल सकते हैं

0

कभी-कभी, भले ही आप बदल गए .slnऔर .csprojपथ, और मैन्युअल रूप से नाम बदलें, आप उस फ़ोल्डर का नाम जांचना भूल सकते हैं जिसमें परियोजना शामिल है।

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.