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