2009-08-29 18 views
17

मैं सीआई के बारे में सोच रहा हूं और स्वचालित रूप से बहुत हाल ही में बनाता है और यह जानने में दिलचस्पी है कि निरंतर एकीकरण वातावरण स्थापित करने और बनाए रखने के लिए कोई सर्वोत्तम प्रथा है या नहीं। क्या आप अपनी सभी सीआई संबंधित फाइलों को अपने प्रोजेक्ट स्रोत से चेक इन करते हैं? आप आमतौर पर अपने सीआई कैसे बनाते हैं और फाइलें कैसे बनाते हैं? किसी भी सुझाव का स्वागत है!निरंतर एकीकरण - सर्वोत्तम प्रथाओं

+0

आवंटित करने के लिए सीआई चीजें प्लेटफ़ॉर्म स्वतंत्र हैं लेकिन आप अपने सीआई को कैसे बनाते हैं और आपके प्रश्न का फाइल हिस्सा कैसे बनाते हैं, प्लेटफ़ॉर्म से प्रभावित हो सकते हैं। क्या आप साझा करना चाहते हैं कि आपका मंच क्या है? – olle

+0

मैं एक .NET/विंडोज वातावरण में रह रहा हूं। फिलहाल हम अपने निर्माण के लिए क्रूज़ कंट्रोल .NET, MSBuild और NAnt का उपयोग कर रहे हैं। –

+0

इस आलेख को देखें: http://www.yegor256.com/2014/07/21/read-only-master-branch.html – yegor256

उत्तर

3

आप पहले से ही, निश्चित रूप से बाहर मार्टिन Fowler श्रृंखला, डुवाल/मतयास/ग्लोवर द्वारा से Continuous Integration चेक बुक नहीं किया है। यह ठोस उदाहरणों के साथ गहराई से पूछे जाने वाले सभी प्रश्नों को शामिल करता है।

2

भी व्यावहारिक श्रृंखला '"Pragmatic Project Automation" है।

बेशक, निर्माण करने के लिए आवश्यक सभी फाइलों की जांच की जानी चाहिए। सीआई उन्हें और कैसे प्राप्त करेगा?

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

+0

हाँ। आपको अपने बिल्ड सर्वर पर कई चीजें इंस्टॉल करने की आवश्यकता होगी, लेकिन लक्ष्य है कि आपकी सभी सीआई-संबंधित फाइलें स्रोत नियंत्रण के अंतर्गत हों (और सीआई सर्वर वहां से फ़ाइलों को खींचें)। हम सी # विकास के लिए टीमसिटी का उपयोग करते हैं। यदि कोई निर्माण जटिल हो जाता है, तो हम NANT का उपयोग करते हैं (जो एमएसबिल्ड भी कह सकता है)। – TrueWill

1

यदि आपकी बिल्ड स्क्रिप्ट बड़ी हो रही है तो आप इसे विभाजित कर सकते हैं और प्रासंगिक भागों को शामिल कर सकते हैं। यह रखरखाव और पठनीयता बेहतर बनाता है।

मेरी अन्य सलाह पारंपरिक प्रोग्रामिंग के विपरीत होगी - जब बिल्ड स्क्रिप्ट बनाने पर टिप्पणियों की उदार मात्रा का उपयोग किया जाता है।

6
  1. एक चरण निर्माण के साथ शुरू करें। यदि आपके पास ऐसा नहीं है, तो आपके पास कोई उचित सीआई
  2. यदि यह स्रोत नियंत्रण में नहीं है, तो यह
  3. मौजूद नहीं है यदि आपके सीआई की स्थापना और रखरखाव एक डेवलपर स्थापित करने के प्रयास से अधिक है वर्कस्टेशन तो आप अपने आईडीई पर अत्यधिक निर्भर हैं या आपकी परियोजना संरचना अत्यधिक जटिल है। एक रिफैक्टरिंग अवसर के रूप में विचार करें।
  4. आपको सीआई करने के लिए कुछ भी पसंद नहीं है। आपको यह जानने की भी आवश्यकता नहीं है कि यह क्या करना है। मैंने my earlier experience here लिखा, जब मैंने कभी सीआई शब्द सुनाई से पहले एक बेवकूफ सीआई लागू किया।
2

लोकप्रिय जेनकिंस/हडसन सीआई उपकरण के संस्थापक कोहसुके कवागुची ने सिर्फ एक श्वेत पत्र प्रकाशित किया जो आपको उपयोगी हो सकता है। 7 Ways to Optimize Jenkins

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