प्री-बिल्ड कार्य - क्रूज़ कंट्रोल.नेट में कार्यशील प्रतिलिपि को हटा देना

मैं वर्तमान में काम पर निरंतर एकीकरण वातावरण स्थापित करने की प्रक्रिया में हूं। हम VisualSVN सर्वर और CrusieControl.NET का उपयोग कर रहे हैं। कभी-कभी एक बिल्ड विफल हो जाएगा और एक लक्षण यह है कि CruiseControl.NET कार्यशील प्रतिलिपि में संघर्ष हैं। मेरा मानना ​​है कि इस तरह से मैंने विजुअल स्टूडियो समाधान स्थापित किए हैं। उम्मीद है कि हम इस माहौल में जितनी अधिक परियोजनाएं चलाएंगे, उतनी ही अच्छी समझ होगी कि उन्हें कैसे स्थापित किया जाए, इसलिए मैं इस बात पर सवाल नहीं उठा रहा कि इस चरण में संघर्ष क्यों होते हैं। बिल्ड को ठीक करने के लिए मैं कार्यशील प्रतिलिपि हटाता हूं और एक नया निर्माण बल देता हूं - यह हर बार (वर्तमान में) काम करता है। तो मेरे प्रश्न हैं: कार्यशील प्रति को निरंतर एकीकरण निर्माण प्रक्रिया का एक वैध हिस्सा हटा रहा है, और मैं इसके बारे में कैसे जा सकता हूं?

मैंने एमएसटीस्क सहित समाधानों का प्रयास किया है और कमांड लाइन से हटाना कॉल किया है लेकिन मुझे कोई भाग्य नहीं है।

बहुत शब्दशः होने के लिए खेद है - अच्छा काम यह एक बीटा है :)

0
ro fr bn
सबवर्सन के लिए क्लीनकॉपी अब संस्करण 1.4.1 में लागू किया गया है। आपको बस अपनी कॉन्फ़िगरेशन में क्लीनकॉपी को सही पर सेट करना होगा
जोड़ा लेखक Alex, स्रोत

5 उत्तर

@ ब्रैड बार्कर

केवल निर्माण उत्पादों को मिटा देने के लिए साफ साधन हैं।

काम करने की प्रतिलिपि को हटाना बाकी सब कुछ भी हटा देता है (स्रोत और परियोजना फाइल आदि)।

आम तौर पर यह अच्छा होता है कि यदि आप निर्माण कर रहे हैं तो मशीन पूरी तरह से हटाए बिना काम कर सकती है, क्योंकि इससे यह पता चलता है कि एक सामान्य डेवलपर क्या करता है। अपडेट के दौरान जो भी संघर्ष मिलता है वह आपके डेवलपर्स की अपेक्षाओं के बारे में एक प्रारंभिक चेतावनी है।


@jamie

औपचारिक रिलीज के लिए हाँ पूरी तरह से साफ चेकआउट करना बेहतर है। तो मुझे लगता है कि यह निर्माण के उद्देश्य पर निर्भर करता है।

0
जोड़ा

किसी भी महत्वपूर्ण निर्माण से पहले 'साफ' करने के लिए किसी भी निर्माण प्रक्रिया के लिए यह बहुत आम है और आम तौर पर एक अच्छा अभ्यास है। यह आउटपुट को खराब करने के लिए पिछले निर्माण से किसी भी 'कलाकृतियों' को रोकता है।

एक साफ काम अनिवार्य रूप से आप काम कर रहे प्रतिलिपि को हटाकर कर रहे हैं।

0
जोड़ा

यदि आप CC.NET के jira को लागू करने के लिए चेक किए गए पैच की जांच करते हैं सबवर्सन के लिए क्लीनकॉपी जो आप चाहते हैं वही करता है और केवल टीएफएस एक के साथ अपने स्रोत नियंत्रण ब्लॉक के अंदर क्लीनकॉपी को सही के बराबर सेट करता है।

0
जोड़ा

@jamie: एक कारण है कि आप निरंतर एकीकरण सर्वर - निर्माण समय का उपयोग करते समय हर बार एक स्वच्छ निर्माण करने में सक्षम नहीं हो सकते हैं। कुछ परियोजनाओं पर मैंने काम किया है, साफ बिल्ड 80+ मिनट लेते हैं (एक एम्बेडेड प्रोजेक्ट जिसमें हजारों सी ++ फाइलें चेकआउट के लिए होती हैं और फिर एकाधिक लक्ष्यों के खिलाफ संकलित होती हैं)। इस मामले में, आपको इस बात की संभावना के मुकाबले तेजी से प्रतिक्रिया का लाभ उठाना होगा कि एक स्वच्छ निर्माण कुछ ऐसा करेगा जो एक वृद्धिशील निर्माण नहीं करेगा। हमारे मामले में, हमने निर्माण प्रक्रिया में सुधार और समानांतर करने पर काम किया जबकि साथ ही साथ हमारी सीआई मशीन पर वृद्धिशील बिल्डिंग की इजाजत दी गई। हमें कुछ समस्याएं थीं क्योंकि हम साफ निर्माण नहीं कर रहे थे, लेकिन रात या साप्ताहिक स्वच्छ निर्माण करके आप अपनी सीआई मशीन की तेज प्रतिक्रिया खोए बिना जोखिम को हटा सकते हैं।

0
जोड़ा

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

कामकाजी प्रति को हटाना संभव है क्योंकि मैंने इसे नंत के साथ किया है।

नंत में मेरे पास अपने स्वयं के फ़ोल्डर में एक क्लीन स्क्रिप्ट होगी जिसके साथ मैं हटाना चाहता हूं और फिर इसे CC.net से बुलाऊंगा।

I assume this should also be possible with a batch file. Take a look at the rmdir command http://www.computerhope.com/rmdirhlp.htm

@pauldoo

मैं अपने सीआई सर्वर को पूर्ण डिलीट करने के लिए पसंद करता हूं क्योंकि जब मैं रिलीज बिल्ड करने के लिए जाता हूं तो मुझे कोई आश्चर्य नहीं होता है, जिसे हमेशा एक स्वच्छ राज्य से किया जाना चाहिए। लेकिन यह दोनों को संभालने में सक्षम होना चाहिए, ऐसा क्यों नहीं है

0
जोड़ा