समाधान फ़ाइलों को "हमेशा" चेक करने से विज़ुअल स्टूडियो को कैसे रोकें?


152

जाहिरा तौर पर कोई कारण नहीं है, हर बार जब मैं अपना समाधान खोलता हूं, तो विज़ुअल स्टूडियो एसएलएन फ़ाइल को बाहर की जाँच करता है।

अगर मैं इसकी तुलना पिछले संस्करण से करूं तो कोई बदलाव नहीं है। लेकिन यह वास्तव में निराशाजनक है क्योंकि हर किसी के पास समाधान की जाँच है।

मैं वीएस 2008 और टीएफएस 2008, दोनों SP2 का उपयोग कर रहा हूं।

किसी भी विचार पर मैं इस बात को कैसे रोक सकता हूं? या वीएस के लिए टीएफएस स्रोत नियंत्रण प्रदाता की एक विशेषता / बग है?


क्या आपके पास समाधान के हिस्से के रूप में एक इकाई परीक्षण परियोजना है?
मिच गेहूं M

1
TFS समवर्ती चेकआउट का समर्थन करता है, और जब तक .sln फ़ाइल में संशोधन नहीं होता है तब तक कई चेकआउट कोई समस्या नहीं है।
डर्क वोल्मार

5
जब * .ln फ़ाइलों में वास्तविक परिवर्तन होते हैं, तो वे विलय के लिए एक भयावह दुःस्वप्न होते हैं क्योंकि भीतर की परियोजनाओं को मनमाने ढंग से-लेकिन-अद्वितीय आईडी नहीं दी जाती हैं। मैं समवर्ती चेकआउट के लिए एक बड़ा वकील हूं, लेकिन मैं अपने अधिकांश * .ln को बंद रखता हूं।
रिचर्ड बर्ग

3
यह VS2013 में तय है !!! मैं 2012 में एक ही समाधान खोलता हूं और यह जाँच करता है। 2013 में खुला, और यह स्पष्ट है।
felickz

2
मैंने इसे समय-समय पर विजुअल स्टूडियो 2010 से सभी संस्करणों के साथ और सबसे नए संस्करण तक देखा है, विजुअल स्टूडियो 2015 अपडेट 3. यह एक समाधान को खोलने के समय के आधे के आसपास होता है, और यह समाधान के लिए अधिक बार लगता है कई परियोजनाओं के साथ।
टॉर Tस्टरगार्ड

जवाबों:


121

यह तब होता है जब निम्न .sln फ़ाइल में होता है:

GlobalSection(ExtensibilityGlobals) = postSolution
    MyGlobalProperty = AnyValue
EndGlobalSection

मैंने पाया कि एंटरप्राइज लाइब्रेरी ने इनमें से एक को जोड़ा। मैंने इसे हटा दिया, समाधान में जांच की, फिर बंद कर दिया, इसे फिर से खोला और कोई और अधिक स्वचालित जांच नहीं की।


21
ऐसा लगता है कि यूनिटी नुगेट पैकेज ने वीएस 2010 में मेरी समाधान फ़ाइल के लिए ऐसा किया होगा। मैंने इस अनुभाग को हटा दिया और मेरी ऑटो-चेकआउट समस्या हल हो गई। धन्यवाद ग्राहम!
डैन मॉर्क

14
मेरी पसंदीदा तकनीकों में से दो - टीएफएस और एन्टलिब - डार्लिंग की एक जोड़ी।

1
मेरे पास ऐसा एक अनुभाग है, लेकिन इसे हटाना नहीं चाहता क्योंकि इसमें वह डेटा है जिसे मैं रखना चाहता हूं - अब क्या? एमएस ने इस मुद्दे को "प्रतिगामी नहीं" के रूप में बंद कर दिया - बेवकूफ? connect.microsoft.com/VisualStudio/feedback/details/573538/…
मैटानजा

डैन की टिप्पणी में आवश्यक जानकारी को जोड़ा गया है - सभी वैश्विक वर्गों को हटाने के लिए आवश्यक नहीं है - सिर्फ एक हिस्सा जो एकता नगेट पैकेज द्वारा जोड़ा गया लगता है।
जोर्डन 19

2012 में अभी भी वही है
ब्लैकिस

6

मेमोरी से, यदि आप टूल्स, विकल्प मेनू का उपयोग करते हैं और सोर्स कंट्रोल, एनवायरनमेंट पैनल का चयन करते हैं , तो आईडीई इंटरफेस को संस्करण नियंत्रण के तरीके से कॉन्फ़िगर करने के लिए कुछ विकल्प होने चाहिए।

मुझे लगता है कि इनमें से कुछ विकल्प खुले व्यवहार पर चेकआउट को नियंत्रित करते हैं।


1
हाँ ... वे आपको स्वचालित रूप से चेकआउट करने की अनुमति देते हैं, चेकआउट से संकेत देते हैं, या कुछ भी नहीं करते हैं ... लेकिन इस समस्या से मदद करने वाले कुछ भी नहीं
CodeClimber

जब आप यह संकेत देते हैं तो क्या आप केवल "नहीं, चेक आउट नहीं करते" कह सकते हैं?
स्कॉट मारलो

काश मैं टीम में एकमात्र डेवलपर होता ... दुर्भाग्य से मैं सभी डेवलपर्स के मेहनती होने पर भरोसा नहीं कर सकता
कोडकलबेर

CodeClimber, हर बार जब आप VS शुरू करते हैं तो यह एक ऑटोमैटिक चेक आउट करता है और आप चाहते हैं कि ऑटोमैटिक चेक आउट को रोकना और बंद करना इस समस्या को ठीक नहीं करता है। क्या?
वीटी

1
उन लोगों के लिए जिनके पास विकल्पों की सूची में "वातावरण" नहीं है, अपने कनेक्शन को "स्थानीय" से "सर्वर" में बदल दें (स्रोत: stackoverflow.com/questions/26843300/… )
आदरणीय पृष्ठ

5

बस मेरी तरह, आप इसे काम करने के लिए नहीं कर सकते हैं और आप पाते हैं कि एक या एक से अधिक परियोजनाओं की भी जांच हो सकती है, मुझे एक सरल समाधान मिला। परियोजना (नों) पर ध्यान दें कि यह जाँच करता रहे। फ़ाइल पर जाएँ - स्रोत नियंत्रण - स्रोत नियंत्रण बदलें, और फिर विचाराधीन परियोजनाओं को अनबाइंड करें। ठीक पर क्लिक करें, सभी सहेजें, फिर बदलें स्रोत नियंत्रण में वापस जाएं और समाधान के लिए तह परियोजना को बांधें। उम्मीद है कि यह दूसरों के लिए काम करेगा


3

हालांकि पहली जगह में समस्या को रोकने के लिए नहीं, टीम फाउंडेशन पावर टूल्स "अनडू अनचेंजेड" कमांड का उदार उपयोग (कोई आश्चर्य नहीं होगा) यदि कोई बदलाव नहीं किया गया है तो लंबित संपादन को पूर्ववत करें।


टीम फाउंडेशन पावर टूल्स के लिए अपडेटेड लिंक: marketplace.visualstudio.com/…
Jaider

3

चेक-आउट की अनुमति दें और फिर दोनों फ़ाइलों की तुलना करें। अगर VS कुछ ऐसा जोड़ा

<Service Include="{B4F97281-0DBD-4835-9ED8-7DFB966E87FF}" />

आप VS2008 में समाधान के साथ VS बग का अनुभव कर रहे हैं, लेकिन VS2005 में पोर्ट नहीं किया गया है

चेक इस लिंक अधिक जानकारी के लिए:


समाधान की किसी भी परियोजना में XML की यह पंक्ति नहीं है
CodeClimber

2

Visual Studio समाधान फ़ाइल को Microsoft एंटरप्राइज़ लाइब्रेरी का उपयोग करके समाधान की एक या अधिक परियोजनाओं के माध्यम से चुपचाप चेक-आउट किया जा रहा है - मेरा मानना ​​है कि यह एंटरप्राइज़ लाइब्रेरी कॉन्फ़िगरेशन उपयोगिता के साथ कुछ करना है जो विभिन्न एप्लिकेशन ब्लॉक के कॉन्फ़िगरेशन प्रबंधन की अनुमति देता है - http : //msdn.microsoft.com/en-us/library/ff649479.aspx

इस Microsoft फ़ीडबैक को देखें पोस्टिंग: http://connect.microsoft.com/VisualStudio/feedback/details/737184/globalsection-extensibilityglobals-postsolution-checks-out-snn-file-on-open


लिंक निगेल के लिए धन्यवाद, सभी टीम इस मुद्दे का अनुभव कर रही हैं
बाल्दी

1

यह समाधान के भीतर लोड किए जा रहे प्रोजेक्ट सिस्टम में से एक का फीचर / बग है। विभिन्न प्रकार की परियोजनाओं (सी #, वीबी, सी ++, वेब साइट, वेब ऐप, यूनिट टेस्ट, सिल्वरलाइट ...) को हटाने की कोशिश करें जब तक कि वे चले न जाएं; तुम्हारा जवाब है।


0

क्या आप तुलना करने से पहले अपनी फाइलों को सहेज रहे हैं? यह मेरे साथ कुछ समय पहले हुआ था और कहता रहा कि फाइलों के बीच कोई बदलाव नहीं हैं, लेकिन कुछ समय बाद मुझे एहसास हुआ कि मैं पहले फाइलों को सहेज नहीं रहा था और यह डिस्क में संस्करण के साथ तुलना कर रहा था, स्मृति में संस्करण नहीं।

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

मैं आपको अपनी .sln फ़ाइल खोलने और कुछ निरपेक्ष रास्तों की तलाश करने या संबंधित पथों के बारे में सुझाव दूंगा जो कुछ डेवलपर मशीन में मौजूद नहीं हो सकते हैं, जो आपके स्रोत नियंत्रण से प्राप्त होने वाली फ़ाइलों के आधार पर होते हैं।

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