2013-02-27 41 views
8

यह सवाल ऊपर के लिंक पर जवाब नहीं है ... मेंTFS दृश्य स्टूडियो 2012 चेक-इन जबरदस्ती

मैं था TFS के साथ कुछ समस्या है, जहां दृश्य स्टूडियो स्थानीय मशीन पर बनाता है कोई समस्या नहीं है, लेकिन जब मैं कोशिश सर्वर पर निर्माण करने के लिए मुझे बिल्ड त्रुटियां मिलती हैं। त्रुटियां इस प्रश्न के लिए प्रासंगिक नहीं हैं।

मेरे पास यह मुद्दा है कि त्रुटियों को ठीक करने के लिए मुझे अपनी स्थानीय मशीन पर कुछ फ़ाइलों को मैन्युअल रूप से संपादित करना था, और चूंकि उन्हें मैन्युअल रूप से संपादित किया गया था, इसलिए टीएफएस परिवर्तन का पता नहीं लगाता है, इसलिए यह मुझे अपलोड करने नहीं देगा मेरा परिवर्तन सर्वर पर सेट है जो वहां समस्याओं को ठीक करेगा।

मेरा पहला, और मुख्य प्रश्न यह है: मैं अपनी सभी स्थानीय फ़ाइलों को सर्वर पर कॉपी करने के लिए टीएफएस को कैसे मजबूर कर सकता हूं। पूरे के विपरीत की तरह क्रमबद्ध करें:

गोटो व्यू/अन्य विंडोज/स्रोत नियंत्रण एक्सप्लोरर/प्रासंगिक परियोजना/उन्नत/राइट क्लिक करें विशिष्ट संस्करण/चेक करें "सभी फाइलों को ओवरराइट करें ..."/ठीक है दबाएं।

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

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

आगे की समस्या को समझाने के लिए मैं विशेष रूप से nuget पैकेज प्रबंधक के साथ हूं। मैंने विकल्प को अक्षम कर दिया "निर्माण के दौरान अनुपलब्ध पैकेज डाउनलोड करने के लिए NuGet को अनुमति दें"। तो स्थानीय रूप से मुझे वास्तविक बिल्ड त्रुटियां मिलीं। हाँ यह सही है, त्रुटियां बनाएं। इस तरह ...

प्रोजेक्ट XXX: पैकेज पुनर्स्थापना डिफ़ॉल्ट रूप से अक्षम है। सहमति देने के लिए, विजुअल स्टूडियो विकल्प संवाद खोलें, पैकेज प्रबंधक नोड पर क्लिक करें और 'निर्माण के दौरान अनुपलब्ध पैकेज डाउनलोड करने के लिए NuGet को अनुमति दें' की जांच करें। आप पर्यावरण परिवर्तनीय 'EnableNuGetPackageRestore' को 'सत्य' पर सेट करके सहमति भी दे सकते हैं।

जो अब मुझे त्रुटियों से छुटकारा पाने के लिए इस विकल्प को फिर से सक्षम करने के लिए मजबूर करता है। मैं इस पर नाराज हूं क्योंकि ऐसी त्रुटियों को चेतावनियों के रूप में प्रस्तुत किया जाना चाहिए ताकि निर्माण को रोकने के लिए नहीं। यह गंभीरता से निराशाजनक है और नतीजतन मुझे NuGet की बहुत कम राय है।

वैसे भी पर्याप्त ranting, मैं इसे फिर से सक्षम किया, जैसे कि मेरे पास कोई विकल्प नहीं था। लेकिन संस्करण जहां यह अक्षम किया गया था सर्वर तक चला गया। अब मुझे सर्वर पर यह त्रुटि मिलती है। मैंने इसे फिर से सक्षम करने और चेक करने की कोशिश की, लेकिन टीएफएस मुझे नहीं जाने देगी। (चेतावनी ... कोई लंबित परिवर्तन नहीं)। बेशक नहीं, यह सिर्फ एक मूर्ख चेक बॉक्स है। संभवतः क्या बदल सकता है। लेकिन अब मुझे सर्वर पर एक त्रुटि मिलती है कि मैं सभी को ठीक नहीं कर सकता क्योंकि NuGet में किसी ने अपनी चेतावनियों को सही तरीके से डिजाइन करने में कुछ नहीं सिखाया (क्योंकि त्रुटियों के कारण निर्माण को रोकने के विरोध में)।

तो, एक बार फिर, मैं सर्वर पर अपनी सभी फाइलें, बदले या अपरिवर्तित, क्रियात्मक, लेने के लिए टीएफएस को कैसे मजबूर कर सकता हूं। इस तरह, जब मैं स्थानीय रूप से किसी समस्या को ठीक करता हूं, तो इसे सर्वर पर भी "ठीक" करना चाहिए। या कम से कम, जब मैं इसे अगली बार डाउनलोड करता हूं, तो मुझे पूरा फ़ाइल सेट करने का आश्वासन दिया जाता है।

क्षमा करें अगर ऐसा लगता है कि मैं नकारात्मक हूं, लेकिन मैं 5 ठोस दिनों के लिए इस पर हूं और इसने मुझे पूरी तरह से लागत और कंपनी को बहुत पैसा खर्च करने से रोक दिया है। किसी भी मदद को बहुत, बहुत सराहा जाएगा।

+0

संभावित डुप्लिकेट [ऑफ़लाइन होने पर फ़ाइलों को संशोधित होने पर ऑनलाइन चेक करने के बाद चेक-इन दिखाई देता है] (http://stackoverflow.com/questions/9594537/files-modified-while-offline-appears-checked-in-after-going- ऑनलाइन) –

+2

या बस * स्थानीय वर्कस्पेस * का उपयोग करें, मान लें कि आप टीएफएस 2012 का भी उपयोग कर रहे हैं। –

+0

यदि आप स्थानीय रूप से काम करने जा रहे हैं तो स्रोत नियंत्रण का बिंदु क्या है। 30+ डेवलपर्स एक ही परियोजना पर स्थानीय रूप से काम कर रहे हैं ... क्या आप आना चाहते हैं और परिवर्तन सेट मैन्युअल रूप से मर्ज करना चाहते हैं! :) इसके अलावा आपके द्वारा पोस्ट किया गया लिंक मेरे प्रश्न का उत्तर नहीं देता है, इसलिए यह अनुचित है कि आपने करीब मतदान किया है। –

उत्तर

10

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

+0

। मैं कुछ भी कोशिश करूंगा। लेकिन अगर आश्चर्य हो तो मेरी स्थानीय फाइलों को ओवरराइट नहीं किया गया तो मुझे आश्चर्य होगा। (इससे कोई फर्क नहीं पड़ता कि यह करता है, एक बात मैंने टीएफएस के साथ कठिन तरीके से सीखा है, बहुत सारे बैकअप बनाना है)। :) अगर यह काम करता है तो मैं आपको कुछ मिनटों में वापस आऊंगा। आपके उत्तर के लिए धन्यवाद। –

+0

क्यू 1। कृपया चरण 2 को स्पष्ट करें। मैंने सोर्स कंट्रोल एक्सप्लोर का उपयोग करके एक कदम उठाया, राइट क्लिक करके बस "संपादन के लिए चेक आउट" चुनना। अब तक चेक-आउट के रूप में कई फाइलों को चिह्नित किया गया है। :) –

+2

चरण 2 यह है कि यदि आप नीचे के समाधान समाधान में फ़ोल्डर पर राइट क्लिक करते हैं तो फ़ोल्डर में आइटम जोड़ें, इसे चुनें और मेनू के माध्यम से जाएं। सुनिश्चित करें कि आप बहिष्कृत सूची की जांच करें क्योंकि टीएफएस कुछ प्रकार की फाइलों में जांच नहीं करना चाहेंगे – Alex

0

यदि आप टीएफएस 2012 का उपयोग कर रहे हैं, तो Local Workspaces आपके लिए एक अच्छा समाधान होगा।

बस स्पष्ट होने के लिए - Local Workspaces का मतलब यह नहीं है कि आपके डेवलपर स्थानीय रूप से काम कर रहे हैं। सभी कोड अभी भी उसी तरह से स्रोत नियंत्रण के तहत Server Workspaces के साथ हैं।

Local Workspaces टीएफएस 2012 के लिए नए हैं और आपकी समस्या का समाधान करेंगे। आपके लिए मुख्य लाभ यह है कि फ़ाइलों को अब read-only चिह्नित नहीं किया गया है। यह आपको चेकआउट करने के बिना कहीं भी (नोटपैड, कोई अन्य आईडीई, विजुअल स्टूडियो) से संपादित करने में सक्षम होने की अनुमति देता है। विजुअल स्टूडियो तब स्वचालित रूप से पता लगाएगा कि फ़ाइल बदल गई है और इसे Pending Changes विंडो में सूचीबद्ध करें।

अच्छा लेख कार्यस्थानों के विभिन्न प्रकार की तुलना: http://blogs.msdn.com/b/willy-peter_schaub/archive/2011/11/30/team-foundation-server-trying-to-understand-server-versus-local-workspaces.aspx

0

मैं स्रोत नियंत्रण Explorer विंडो का उपयोग करना चाहते है, तो सही एक फ़ोल्डर पर क्लिक करें और तुलना करें चुनें। आप यह देखने के लिए चुन सकते हैं कि लक्ष्य फ़ोल्डर में क्या भिन्न है, या कोई नई फ़ाइल क्या है। अलग-अलग फ़ाइलें लाल रंग में दिखाई देती हैं। फिर आप उन पर राइट क्लिक कर सकते हैं और फ़ाइलों में चेक आउट और चेक कर सकते हैं, या समय पर एक से अधिक फाइलों का चयन करने के लिए नियंत्रण-क्लिक का उपयोग कर सकते हैं।

0

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

  1. एक अलग स्थान पर बैकअप फ़ोल्डर बनाएं और पूरी चीज़ को कॉपी करें। इससे कोई फर्क नहीं पड़ता कि आप एक अद्वितीय अलग फ़ोल्डर में कितनी देर तक बैक अप लेते हैं। फ़ोल्डर्स को अलग-अलग फाइलों की प्रतिलिपि बनाना सुनिश्चित करें क्योंकि कुछ फाइलें छिपी जा सकती हैं।

  2. नवीनतम संस्करण (टीएफएस के अनुसार) का पूर्ण लाभ प्राप्त करें। इसमें कुछ समय लग सकता है और यही कारण है कि आप इसे एक अलग स्थान पर वापस लेते हैं। इस अंक पर वीएस खोलने के लिए सुनिश्चित रहें !!!

  3. आपके द्वारा चरण 1 में किए गए बैकअप के साथ "मिली" फ़ाइलों को ओवरराइट करें। स्थानीय कार्य-स्थान फ़ाइलों में परिवर्तनों की निगरानी करेगा क्योंकि आप उन्हें अपनी स्थानीय जगह में बैक अप प्रतिलिपि के साथ ओवरराइट करते हैं, और यदि उन्हें किसी के पास कोई अंतर है तो तदनुसार लंबित परिवर्तन होने के रूप में चिह्नित करें।

  4. स्रोत नियंत्रण एक्सप्लोरर में TFS सर्वर में आपके लंबित परिवर्तन अपडेट करें। ओवरराइट के दौरान पता चला कोई भी परिवर्तन शामिल परिवर्तन अनुभाग में जोड़ा जाएगा।

वोला आपने अपनी फाइलें, काम और टीएफएस सर्वर पर मजबूर कर दिया है!

संबंधित मुद्दे