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