नोट
इस पेज तक पहुँच के लिए प्रमाणन की आवश्यकता होती है. आप साइन इन करने या निर्देशिकाओं को बदलने का प्रयास कर सकते हैं.
इस पेज तक पहुँच के लिए प्रमाणन की आवश्यकता होती है. आप निर्देशिकाओं को बदलने का प्रयास कर सकते हैं.
स्रोत नियंत्रण एकीकरण विकास टीमों को एक या अधिक Microsoft Dataverse परिवेशों में समाधान और समाधान ऑब्जेक्ट्स को एक समर्थित Git प्रदाता, जैसे Azure DevOps या GitHub का उपयोग करके सिंक्रनाइज़ करने में सक्षम बनाता है. समाधान अनुभव मूल रूप से स्रोत नियंत्रण एकीकरण कार्यक्षमता प्रदान करते हैं, इसलिए नागरिक डेवलपर्स, कोड-प्रथम डेवलपर और व्यवस्थापक सभी संस्करण नियंत्रण, परिवर्तन ट्रैकिंग और विभिन्न उपकरणों और वातावरणों में निर्बाध टीम सहयोग से लाभ उठा सकते हैं। डेवलपर वातावरण के साथ Git एकीकरण का उपयोग करें, न कि अपने परीक्षण या उत्पादन वातावरण में। परिनियोजित करने के लिए Power Platform में समाधान आर्टिफैक्ट्स और पाइपलाइन बनाने के लिए बिल्ड का उपयोग करें.
यह लेख आपके Dataverse वातावरण और समाधानों के साथ Git-सक्षम स्रोत नियंत्रण का उपयोग करने की कुछ प्रमुख अवधारणाओं और लाभों के बारे में बताता है। Git in Azure DevOps के बारे में जानकारी के लिए, Azure DevOps Git रिपॉजिटरी देखें। GitHub रिपॉजिटरी के बारे में जानकारी के लिए, रिपॉजिटरी के बारे में देखें.
एएलएम में Power Platform और Dataverse
Power Platform कई आउट-ऑफ-द-बॉक्स क्षमताएं प्रदान करता है जो संगठनों को उनके समाधानों के लिए एप्लिकेशन जीवनचक्र प्रबंधन (ALM) का प्रबंधन करने में सक्षम बनाता है। इसमें प्लेटफ़ॉर्म में कई अलग-अलग प्रकार की वस्तुओं के लिए कंटेनरों के रूप में समाधान पैकेज करने, एप्लिकेशन जीवनचक्र में शामिल वातावरणों का प्रबंधन करने और पाइपलाइनों का उपयोग करके समाधानों को तैनात करने की क्षमता शामिल है। Power Platform डेवलपर टूलिंग का उपयोग करके Git रिपॉजिटरी को एकीकृत करने के कई तरीके भी हैं। Power Platform Dataverseमें Git के मूल एकीकरण के साथ, निर्माताओं के लिए अपने समाधानों के साथ परिचित तरीके से काम करने और Power Apps (make.powerapps.com) में सरलीकृत इंटरफेस के माध्यम से स्रोत नियंत्रण के साथ बातचीत करने के लिए प्रक्रिया सरल और सुव्यवस्थित हो गई है।
लाभ
- सत्य के स्रोत के रूप में स्रोत नियंत्रण: कुछ संगठनों में, परिनियोजन के लिए सत्य का स्रोत निर्माता परिवेश है जिसमें समाधान बनाए जाते हैं। Dataverse इस व्यवहार का मुख्य कारण यह है कि गैर-देशी Git एकीकरण उन्नत तकनीकों और उपकरणों का उपयोग करता है, जिन्हें शुरू करने के लिए पेशेवर आईटी विशेषज्ञता की आवश्यकता होती है। Dataverseमें Git के मूल एकीकरण के साथ, स्रोत नियंत्रण को केवल कुछ चरणों में सक्षम किया जा सकता है और निर्माताओं को उनके समाधानों के साथ काम करने के लिए एक परिचित इंटरफ़ेस प्रदान करता है।
- SDLC सर्वोत्तम प्रथाओं का उपयोग करके सुरक्षा, ऑडिटिंग और अनुपालन: सॉफ़्टवेयर विकास जीवनचक्र (SDLC) सर्वोत्तम प्रथाएँ दिशानिर्देशों और प्रक्रियाओं का एक समूह हैं जो आपकी सॉफ़्टवेयर विकास परियोजनाओं को प्रभावी ढंग से प्रबंधित करने में आपकी सहायता करती हैं। Dataverseमें Git एकीकरण का उपयोग करके, आप अपने समाधानों की गुणवत्ता, विश्वसनीयता और सुरक्षा सुनिश्चित करने के लिए संस्करण नियंत्रण, कोड समीक्षा और स्थैतिक स्रोत कोड विश्लेषण जैसी SDLC प्रथाओं का पालन करते हैं। Git एकीकरण ऑडिटिंग, अनुपालन और ट्रेसबिलिटी जैसी सुविधाएं भी प्रदान करता है जो आपको अपने समाधानों में परिवर्तनों को ट्रैक करने और अन्य टीम सदस्यों के साथ प्रभावी ढंग से सहयोग करने में मदद करती हैं। Dataverse
- अल्पकालिक विकास परिवेश: स्रोत नियंत्रण में अपने परिवेश के अनुकूलन और कॉन्फ़िगरेशन की एक प्रति संग्रहीत करके, आप स्रोत नियंत्रण से विकास परिवेश को शीघ्रता और आसानी से पुनः सक्रिय कर सकते हैं। Dataverse यह आपको विकास और परीक्षण उद्देश्यों के लिए अल्पकालिक वातावरण बनाने की अनुमति देता है। अल्पकालिक परिवेश आपको स्थायी परिवेश पर निर्भर हुए बिना भंडारण को खाली करने, नई सुविधाओं के साथ प्रयोग करने, परीक्षण करने और अपने समाधानों पर पुनरावृत्ति करने की अनुमति देता है।
- फ्यूजन विकास टीमें: फ्यूजन विकास टीमें ऐसी टीमें होती हैं जिनमें डेवलपर्स और निर्माता दोनों शामिल होते हैं जो समाधान बनाने के लिए एक साथ काम करते हैं। Dataverseमें Git एकीकरण का उपयोग करके, ये उपयोगकर्ता अलग-अलग वातावरण में स्वतंत्र रूप से निर्माण कर सकते हैं और एक सामान्य स्रोत नियंत्रण रिपोजिटरी के साथ समन्वय करके दूसरों के साथ सहयोग कर सकते हैं। स्रोत नियंत्रण एकीकरण आपको अपने संगठन की आवश्यकताओं को पूरा करने वाले उच्च-गुणवत्ता वाले समाधान बनाने के लिए डेवलपर्स और निर्माताओं दोनों के कौशल और विशेषज्ञता का उपयोग करने की अनुमति देता है।
- संरक्षण: अपने समाधानों के लिए सत्य के स्रोत के रूप में स्रोत नियंत्रण का उपयोग करने से आप अपने समाधानों में अनपेक्षित परिवर्तनों से शीघ्रता और आसानी से उबर सकते हैं। अपने समाधानों को स्रोत नियंत्रण में संग्रहीत करके, आप उन्हें पिछली स्थिति या संस्करण पर पुनर्स्थापित कर सकते हैं।
मुख्य अवधारणाएँ
अप्रबंधित बनाम प्रबंधित समाधान
जब आप Dataverse के साथ Git एकीकरण का उपयोग कर रहे हैं, तो स्रोत नियंत्रण में संग्रहीत समाधान निर्माता के परिवेश में अप्रबंधित समाधानों से आते हैं. अप्रबंधित समाधान निर्माताओं को उन वस्तुओं को जोड़ने, हटाने और अद्यतन करने की अनुमति देते हैं, जो आपके द्वारा परिवर्तन प्रतिबद्ध और पुश करने पर स्रोत नियंत्रण के साथ समन्वयित होती हैं। प्रबंधित समाधान स्रोत नियंत्रण से बनाए जाते हैं और परीक्षण या उत्पादन जैसे डाउनस्ट्रीम परिवेशों में तैनात किए जाते हैं, तथा उन परिवेशों में संपादन योग्य नहीं होते हैं। प्रबंधित समाधानों का उपयोग यह सुनिश्चित करने के लिए किया जाता है कि आपके समाधानों के लिए सत्य का स्रोत हमेशा स्रोत नियंत्रण है और स्रोत नियंत्रण में जोड़े जाने और अन्यत्र तैनात किए जाने से पहले परिवर्तन केवल निर्माता के परिवेश में ही किए जाते हैं।
समाधान ऑब्जेक्ट के लिए फ़ाइल स्वरूपण
Dataverseमें Git एकीकरण की शुरुआत के साथ, स्रोत नियंत्रण में समाधान और समाधान ऑब्जेक्ट्स को प्रस्तुत करने के तरीके में परिवर्तन हुए हैं। जब आप स्रोत नियंत्रण में परिवर्तन करते हैं और पुश करते हैं, तो समाधान ऑब्जेक्ट एक विशिष्ट प्रारूप में संग्रहीत होते हैं जो Git के साथ संगत होता है। इस प्रारूप का उपयोग समाधान ऑब्जेक्ट्स को ऐसे तरीके से प्रस्तुत करने के लिए किया जाता है जिसे पढ़ना और समझना आसान हो और इसका उपयोग समय के साथ समाधान ऑब्जेक्ट्स में होने वाले परिवर्तनों को ट्रैक करने के लिए किया जा सके। समाधान ऑब्जेक्ट के लिए फ़ाइल प्रारूप को मानव-पठनीय बनाया गया है और इसका उपयोग स्रोत नियंत्रण में समाधान ऑब्जेक्ट में परिवर्तन देखने के लिए किया जा सकता है। इसके अतिरिक्त, एक ही रिपोजिटरी और फ़ोल्डर में एकाधिक समाधानों को संग्रहीत करने की अनुमति देने के लिए, स्रोत नियंत्रण में समाधान ऑब्जेक्ट अब प्रत्येक समाधान के लिए डुप्लिकेट नहीं किए जाते हैं। इसके बजाय, समाधान ऑब्जेक्ट्स को एक ही स्थान पर संग्रहीत किया जाता है और उन्हें एक ही रिपोजिटरी और फ़ोल्डर में एकाधिक समाधानों में साझा किया जा सकता है।
Git के साथ कोड-प्रथम विकास
Power Platform में कोड-प्रथम विकास को Power Platform CLI, Visual Studio, और Visual Studio कोड एक्सटेंशन जैसे विकास टूल का उपयोग करके सक्षम किया गया है। स्रोत नियंत्रण एकीकरण के बिना समाधान विकास प्रक्रिया में कोड-प्रथम डेवलपर्स को शामिल करना कठिन है क्योंकि घटक फ्रेमवर्क नियंत्रण और प्लगइन्स जैसे ऑब्जेक्ट्स को स्रोत कोड से निर्मित पैकेज्ड परिसंपत्तियों के रूप में समाधानों में तैनात किया जाता है और इन्हें सीधे संपादित नहीं किया जा सकता है। Power Apps Dataverse Power Apps निम्न-कोड और कोड-प्रथम ऑब्जेक्ट्स दोनों के लिए विकास प्रक्रिया के भाग के रूप में स्रोत नियंत्रण के बिना, समाधान में परिवर्तनों का प्रबंधन करना और यह सुनिश्चित करना कठिन है कि परिवर्तनों को नियंत्रित तरीके से ट्रैक और तैनात किया जाए।
Dataverseमें Git एकीकरण को सक्षम करके, आप कोड-प्रथम डेवलपर्स से उनके कार्य स्थल पर मिल सकते हैं और कम-कोड और कोड-प्रथम डेवलपर्स दोनों के लिए एक सहज अनुभव प्रदान कर सकते हैं। हालाँकि, निम्न-कोड वातावरण में कोड-प्रथम ऑब्जेक्ट्स का प्रबंधन करते समय कुछ बातों को ध्यान में रखना आवश्यक है।
Dataverse Git एकीकरण के साथ संलयन विकास
Power Platform निम्न-कोड और कोड-प्रथम विकास दोनों के लिए क्षमताएं प्रदान करता है। यह आलेख Dataverse और Git एकीकरण से जुड़ी कोड-प्रथम विकास प्रक्रियाओं पर चर्चा करता है और एकल वातावरण में कोड-प्रथम और निम्न-कोड ऑब्जेक्ट्स को प्रबंधित करने के तरीके के बारे में मार्गदर्शन प्रदान करता है। Power Apps घटक फ्रेमवर्क नियंत्रण, Dataverse प्लग-इन और कस्टम वर्कफ़्लो गतिविधियाँ जैसे ऑब्जेक्ट कोड-प्रथम ऑब्जेक्ट के उदाहरण हैं जिन्हें स्रोत नियंत्रण में प्रबंधित किया जा सकता है।
एकल वातावरण में कोड-प्रथम और निम्न-कोड ऑब्जेक्ट
कोड-प्रथम ऑब्जेक्ट को बिल्ड प्रक्रिया के माध्यम से समाधानों में शामिल किया जा सकता है जो एक प्रबंधित या अप्रबंधित समाधान उत्पन्न करता है जिसे किसी परिवेश में आयात किया जा सकता है। Dataverse हालाँकि, कोड-प्रथम ऑब्जेक्ट्स को एक बार निर्मित किए जाने के बाद उन्हें तैनात करने के लिए समाधान निर्माण प्रक्रिया को नियोजित किए बिना, निर्माता परिवेश में अप्रबंधित समाधान में सीधे तैनात किया जा सकता है। इस लचीलेपन को देखते हुए, निर्माण प्रक्रिया पर भी विचार करना होगा।
यदि आप निर्माता परिवेश में अप्रबंधित समाधान पर सीधे कोड-प्रथम ऑब्जेक्ट्स को परिनियोजित कर रहे हैं, तो जब वे ऑब्जेक्ट्स स्रोत नियंत्रण के लिए प्रतिबद्ध होते हैं, तो केवल उनका संकलित (निर्मित) संस्करण ही स्रोत नियंत्रण में संग्रहीत होता है। उदाहरण के लिए, यदि प्लग-इन है तो बाइनरी DLL, या घटक फ्रेमवर्क नियंत्रण के लिए ट्रांसपिल्ड और अनुकूलित बंडल जावास्क्रिप्ट। Power Apps परिणामस्वरूप, आपके पास स्रोत नियंत्रण में ऑब्जेक्ट की दो प्रतियां होंगी - एक निर्मित संस्करण द्वारा प्रदर्शित होगी और दूसरी स्रोत कोड द्वारा प्रदर्शित होगी। यदि स्रोत कोड और निर्मित संस्करण को सिंक में नहीं रखा जाता है, तो आपके रिपॉजिटरी में बाइनरी को संग्रहीत करने से भ्रम और संभावित संघर्ष हो सकता है। यह अभ्यास अनुशंसित नहीं है क्योंकि स्रोत कोड ऑब्जेक्ट के लिए सत्य का एकमात्र स्रोत होना चाहिए और केवल एक ही प्रति संग्रहीत की जानी चाहिए।
अनुशंसित दृष्टिकोण यह है कि समाधान निर्माण प्रक्रिया के भाग के रूप में कोड-प्रथम ऑब्जेक्ट का निर्माण किया जाए तथा उत्पन्न अप्रबंधित समाधान को निर्माता परिवेश में आयात किया जाए। यह दृष्टिकोण सुनिश्चित करता है कि स्रोत कोड और निर्मित संस्करण को समन्वयित रखा जाए तथा स्रोत कोड ही ऑब्जेक्ट के लिए सत्य का एकमात्र स्रोत हो। हालाँकि, इस दृष्टिकोण के लिए आवश्यक है कि आपके पास आयात प्रक्रिया और परिनियोजन प्रक्रिया में उपयोग के लिए प्रबंधित या अप्रबंधित समाधान उत्पन्न करने के लिए एक बिल्ड प्रक्रिया हो। उदाहरण के लिए, आप Azure पाइपलाइन या GitHub वर्कफ़्लो बना सकते हैं, जो पाइपलाइनों के लिए और Git सिंक प्रक्रियाओं के उपयोग के लिए आर्टिफ़ैक्ट बनाते हैं। Power Platform