Apps Script में कुछ ऐसी सुविधाएं हैं जिनकी मदद से, आपको और अन्य डेवलपर को स्क्रिप्ट, ऐड-ऑन, और वेब ऐप्लिकेशन को एक साथ बनाने और मैनेज करने में मदद मिलती है.
साथ मिलकर काम करने की बुनियादी बातें
किसी प्रोजेक्ट पर मिलकर काम करने के लिए, आपके और आपके साथ काम करने वाले सभी लोगों के पास, Apps Script प्रोजेक्ट फ़ाइल (और अगर यह बाउंड स्क्रिप्ट है, तो उसके कंटेनर) का एडिटर ऐक्सेस होना चाहिए. इससे आपकी टीम के सभी सदस्य, Apps Script कोड को देख सकते हैं और उसमें बदलाव कर सकते हैं. एडिटर, कोड के नए वर्शन भी बना सकते हैं, ऐड-ऑन पब्लिश कर सकते हैं, और स्क्रिप्ट को वेब ऐप्लिकेशन या Apps Script API के लिए, एक्ज़ीक्यूटेबल के तौर पर डिप्लॉय कर सकते हैं.
अपनी टीम की मदद करने के लिए, पहले से यह तय कर लें कि आप अपने प्रोजेक्ट, ऐड-ऑन या वेब ऐप्लिकेशन में बदलाव, समीक्षा, वर्शन मैनेज करने के साथ-साथ (अगर लागू हो) उन्हें डिप्लॉय और पब्लिश करने का तरीका कैसे अपनाएंगे. आम तौर पर, स्टैंडअलोन प्रोजेक्ट पर मिलकर काम करना सबसे आसान होता है, क्योंकि ये सीधे Google Drive में दिखते हैं. साथ ही, ऐड-ऑन और वेब ऐप्लिकेशन के डेवलपमेंट के लिए, ये प्रोजेक्ट टाइप सुझाए जाते हैं.
साथ मिलकर काम करने में एक आम समस्या तब होती है, जब स्क्रिप्ट प्रोजेक्ट का मालिक, प्रोजेक्ट का मालिकाना हक, टीम के किसी और को ट्रांसफ़र किए बिना ही टीम से चला जाता है. इस वजह से, हो सकता है कि आप प्रोजेक्ट को बनाए न रखें या उसे अपडेट न कर पाएं. स्क्रिप्ट प्रोजेक्ट को शेयर की गई ड्राइव में रखने से, यह समस्या नहीं होती. इसकी वजह यह है कि शेयर की गई ड्राइव में मौजूद फ़ाइलों के मालिकों की कोई तय संख्या नहीं होती.
clasp
कमांड-लाइन टूल की मदद से साथ मिलकर काम करना
clasp
की मदद से, script.google.com और अपने लोकल फ़ाइल सिस्टम के बीच प्रोजेक्ट सिंक किए जा सकते हैं. अगर आप और आपके सहयोगी, git
जैसे सोर्स कंट्रोल मैनेजमेंट सॉफ़्टवेयर का इस्तेमाल कर रहे हैं, तो इससे आपके कोड डेवलपमेंट को व्यवस्थित और ऑटोमेट करने में मदद मिलती है.
ज़्यादा जानकारी के लिए, clasp
का इस्तेमाल करके कमांड लाइन इंटरफ़ेस से जुड़ी गाइड देखें.
शेयर की गई ड्राइव का इस्तेमाल करके साथ मिलकर काम करना
शेयर की गई ड्राइव (जिन्हें पहले "टीम ड्राइव" कहा जाता था) की मदद से, Google Drive में एक शेयर किया गया स्पेस बनाया जा सकता है. इस स्पेस में, Drive के उपयोगकर्ताओं के ग्रुप बेहतर तरीके से मिलकर काम कर सकते हैं. 'शेयर की गई ड्राइव' में रखी गई फ़ाइलों का मालिकाना हक किसी व्यक्ति के बजाय पूरे ग्रुप का होता है. इसका मतलब है कि जब कोई सहयोगी ग्रुप छोड़ता है, तो उसके पास फ़ाइल का मालिकाना हक और कंट्रोल नहीं होता.
शेयर की गई ड्राइव की मदद से, फ़ाइलों को एक डोमेन से दूसरे डोमेन में भी ले जाया जा सकता है. किसी एक डोमेन की शेयर की गई ड्राइव में, दूसरे डोमेन के ऐसे लोग भी शामिल हो सकते हैं जो उस डोमेन की फ़ाइलों को शेयर की गई ड्राइव में ले जा सकते हैं. यह सुविधा, Apps Script के डेवलपर के लिए काफ़ी अहम हो सकती है. इसकी मदद से, टीम अलग-अलग डोमेन में ग्राहकों के लिए ऐड-ऑन, वेब ऐप्लिकेशन या अन्य कोड डेवलप कर सकती है.
Apps Script प्रोजेक्ट पर साथ मिलकर काम करने के लिए, शेयर की गई ड्राइव का इस्तेमाल करते समय इन बातों का ध्यान रखें:
- शेयर की गई ड्राइव में संपादक के तौर पर ऐक्सेस पाने वाले सहयोगी, शेयर की गई ड्राइव में नई फ़ाइलें बना सकते हैं या उनमें मौजूद फ़ाइलों को एक से दूसरी जगह ले जा सकते हैं. स्क्रिप्ट एडिटर के तौर पर, वे स्क्रिप्ट प्रोजेक्ट देख सकते हैं और उनमें बदलाव कर सकते हैं. साथ ही, स्क्रिप्ट कोड चला सकते हैं, स्क्रिप्ट के नए वर्शन बना सकते हैं, और ऐड-ऑन पब्लिश कर सकते हैं.
- Apps Script API के लिए, स्क्रिप्ट को वेब ऐप्लिकेशन या एक्सीक्यूटेबल के तौर पर डिप्लॉय करने के लिए, डिप्लॉयमेंट करने वाले खाते का डोमेन, स्क्रिप्ट की मौजूदा शेयर की गई ड्राइव के डोमेन से मेल खाना चाहिए.
- शेयर की गई ड्राइव की मदद से, इस ग्रुप से बाहर के लोगों के साथ, शेयर की गई ड्राइव में मौजूद खास फ़ाइलों को शेयर किया जा सकता है. साथ ही, Drive की किसी दूसरी फ़ाइल की तरह ही उन फ़ाइलों में बदलाव करने और उन्हें देखने की अनुमतियां अपडेट की जा सकती हैं. हालांकि, अगर कोई उपयोगकर्ता शेयर की गई ड्राइव की टीम का हिस्सा है, तो किसी भी फ़ाइल के लिए उसका ऐक्सेस कम नहीं किया जा सकता. उदाहरण के लिए, अगर किसी उपयोगकर्ता के पास शेयर की गई ड्राइव में बदलाव करने का ऐक्सेस है, तो उसे शेयर की गई ड्राइव में मौजूद किसी फ़ाइल के लिए, सिर्फ़ देखने का ऐक्सेस नहीं दिया जा सकता.
- जिन सहयोगियों के पास 'शेयर की गई ड्राइव' का पूरा ऐक्सेस है वे फ़ाइलें और Apps Script प्रोजेक्ट मिटा सकते हैं. साथ ही, फ़ाइलों को 'शेयर की गई ड्राइव' से बाहर ले जा सकते हैं.
- सभी कंटेनर-बाउंड स्क्रिप्ट, कंटेनर फ़ाइल के लिए तय की गई दर्शक और एडिटर ऐक्सेस सूचियों का इस्तेमाल करती हैं. उदाहरण के लिए, अगर आपके पास किसी Google शीट में बदलाव करने का ऐक्सेस है, तो आपके पास उससे जुड़े किसी भी Apps Script प्रोजेक्ट कोड में बदलाव करने का ऐक्सेस भी होगा. इस तरह की किसी कंटेनर फ़ाइल को शेयर की गई ड्राइव में डालने पर, शेयर की गई ड्राइव के साथ काम करने वाले लोगों को स्क्रिप्ट कोड का वही ऐक्सेस मिलता है जो उन्हें कंटेनर के लिए मिलता है.
- जब कोई स्क्रिप्ट प्रोजेक्ट, शेयर किए गए ड्राइव में मौजूद होता है, तो उसके Cloud Platform (GCP) प्रोजेक्ट के ऐक्सेस पर पाबंदी लगाई जा सकती है. ज़्यादा जानकारी के लिए, GCP प्रोजेक्ट और शेयर की गई ड्राइव गाइड सेक्शन देखें.
- किसी एक डोमेन में डिप्लॉय किए गए वेब ऐप्लिकेशन, किसी दूसरे डोमेन में शेयर की गई ड्राइव या खाते के मालिकाना हक में बदलाव होने पर काम करना बंद कर देते हैं. स्क्रिप्ट को उसके मूल डोमेन पर वापस ले जाकर, इस गड़बड़ी को ठीक किया जा सकता है.
- इसी तरह, Apps Script API एक्ज़ीक्यूटेबल के तौर पर डिप्लॉय किए गए स्क्रिप्ट प्रोजेक्ट, एपीआई से कॉल किए जाने पर काम करना बंद कर देते हैं. ऐसा तब होता है, जब उन्हें शेयर की गई ड्राइव की मदद से एक डोमेन से दूसरे डोमेन में ले जाया जाता है. स्क्रिप्ट को उसके मूल डोमेन पर वापस ले जाकर, इस गड़बड़ी को ठीक किया जा सकता है.
शेयर किए गए फ़ोल्डर की मदद से, साथ मिलकर काम करें
अगर शेयर की गई ड्राइव का इस्तेमाल करके साथ मिलकर काम नहीं किया जा सकता, तो शेयर किए गए फ़ोल्डर का इस्तेमाल किया जा सकता है. जब कोई Apps Script प्रोजेक्ट बनाया जाता है या उसे किसी ऐसे Google Drive फ़ोल्डर में ले जाया जाता है जिसका ऐक्सेस दूसरे लोगों के पास भी है, तो वे उस प्रोजेक्ट का वही ऐक्सेस पाते हैं जो उनके पास फ़ोल्डर का है. उदाहरण के लिए:
- अगर किसी के पास फ़ोल्डर में बदलाव करने का ऐक्सेस है, तो वह Apps Script प्रोजेक्ट में बदलाव कर सकता है या उसे मिटा सकता है. साथ ही, स्क्रिप्ट को चला सकता है.
- अगर किसी व्यक्ति के पास फ़ोल्डर को सिर्फ़ देखने का ऐक्सेस है, तो वह Apps Script प्रोजेक्ट देख सकता है और स्क्रिप्ट चला सकता है.
प्रोजेक्ट शेयर करने की सुविधा का इस्तेमाल करके साथ मिलकर काम करना
किसी प्रोजेक्ट पर साथ मिलकर काम करने के लिए, उसे सीधे तौर पर उन सभी लोगों के साथ शेयर करें जिनके साथ आपको मिलकर काम करना है. Google Drive के सामान्य फ़ोल्डर या शेयर की गई ड्राइव में मौजूद स्क्रिप्ट प्रोजेक्ट, सीधे शेयर किए जा सकते हैं. अगर इस तरीके का इस्तेमाल किया जाता है, तो हमारा सुझाव है कि आप समय के साथ, स्क्रिप्ट का मालिकाना हक और रखरखाव करने वाले व्यक्ति के बारे में ध्यान से प्लान बनाएं.
स्टैंडअलोन प्रोजेक्ट, Google Drive में फ़ाइल के तौर पर दिखते हैं. इन्हें अन्य फ़ाइल की तरह ही शेयर भी किया जा सकता है. ज़्यादा जानकारी के लिए, फ़ाइलें और फ़ोल्डर शेयर करना लेख पढ़ें.
कंटेनर में मौजूद प्रोजेक्ट, आपके Google Drive में नहीं दिखते. कंटेनर में मौजूद प्रोजेक्ट शेयर करने के लिए, पैरंट कंटेनर फ़ाइल शेयर करें. उदाहरण के लिए, अगर आपके पास Google Sheets स्प्रेडशीट से जुड़ी कोई स्क्रिप्ट है, तो स्प्रेडशीट के एडिटर को स्क्रिप्ट का एडिटर भी बनाया जा सकता है. कंटेनर से जुड़े प्रोजेक्ट, अपनी कंटेनर फ़ाइल के दर्शक और एडिटर ऐक्सेस सेटिंग को इनहेरिट करते हैं.
सभी कंटेनर वाली स्क्रिप्ट, कंटेनर फ़ाइल के लिए तय किए गए एक ही मालिक, दर्शक, और एडिटर की ऐक्सेस सूची का इस्तेमाल करती हैं. कंटेनर का मालिक, किसी भी नए स्क्रिप्ट प्रोजेक्ट का मालिकाना हक लेता है. भले ही, उसे किसी ने भी बनाया हो.
साथ मिलकर काम करने और प्रोजेक्ट के संसाधन
संसाधन, ऐसी इकाइयां होती हैं जो आपके प्रोजेक्ट से जुड़ी होती हैं, लेकिन उसके कोड से अलग होती हैं. इस सेक्शन में बताया गया है कि किसी प्रोजेक्ट पर मिलकर काम करने से, उसके रिसॉर्स पर क्या असर पड़ता है. खास तौर पर, उसके Cloud Platform प्रोजेक्ट, ट्रिगर, लाइब्रेरी, और उपयोगकर्ता प्रॉपर्टी पर क्या असर पड़ता है.
साथ मिलकर काम करना और Google Cloud प्रोजेक्ट
हर Apps Script प्रोजेक्ट से एक Google Cloud प्रोजेक्ट जुड़ा होता है. Google Cloud प्रोजेक्ट में, मालिकाना हक रखने वाले, एडिटर, और अन्य भूमिकाओं के लिए अलग-अलग सेट होते हैं. ये सेट, स्क्रिप्ट प्रोजेक्ट को ऐक्सेस करने वाले उपयोगकर्ताओं के सेट से अलग हो सकते हैं.
अगर आपके स्क्रिप्ट प्रोजेक्ट को ऐड-ऑन के तौर पर पब्लिश करना है, तो उसमें स्टैंडर्ड Google Cloud प्रोजेक्ट का इस्तेमाल करना होगा. जब किसी ऐसे ऐप्लिकेशन पर मिलकर काम किया जाता है जो स्टैंडर्ड Google Cloud प्रोजेक्ट का इस्तेमाल करता है, तो हमारा सुझाव है कि आप Google Cloud के मालिकों और भूमिकाओं को कॉन्फ़िगर करें, ताकि यह पक्का किया जा सके कि आपके सभी सहयोगियों के पास ऐक्सेस के सही लेवल हों. इससे, उन स्थितियों को रोकने में मदद मिलती है जहां प्रोजेक्ट के मालिक आपके संगठन में नहीं हैं और इसलिए, आपके पास प्रोजेक्ट की Cloud सेटिंग का ऐक्सेस नहीं है. ऐड-ऑन के लिए यह खास तौर पर ज़रूरी है.
सहयोग और ट्रिगर
किसी प्रोजेक्ट पर मिलकर काम करने पर, आपके बनाए गए इंस्टॉल किए जा सकने वाले ट्रिगर उन लोगों के साथ शेयर नहीं किए जाते जिनके पास आपके प्रोजेक्ट का ऐक्सेस है. अगर आपको सभी सहयोगियों के लिए एक जैसा ट्रिगर सेटअप करना है, तो रन टाइम पर प्रोग्राम के हिसाब से ट्रिगर बनाने के लिए, स्क्रिप्ट सेवा का इस्तेमाल किया जा सकता है. ज़्यादा जानकारी के लिए, ट्रिगर को प्रोग्रैम्ड तरीके से मैनेज करना लेख पढ़ें.
साथ मिलकर काम करना और लाइब्रेरी
आपके प्रोजेक्ट में शामिल लाइब्रेरी, प्रोजेक्ट में साथ मिलकर काम करने वाले लोगों के लिए उपलब्ध होती हैं. हालांकि, अगर उपयोगकर्ता के पास शामिल की गई लाइब्रेरी का कम से कम रीड-लेवल ऐक्सेस नहीं है, तो वे उन लाइब्रेरी का इस्तेमाल नहीं कर सकते. इस मामले में, स्क्रिप्ट में गड़बड़ी का मैसेज दिखता है. लाइब्रेरी के बारे में ज़्यादा जानकारी के लिए, लाइब्रेरी मैनेज करना लेख पढ़ें.
साथ मिलकर काम करने और उपयोगकर्ता प्रॉपर्टी
उपयोगकर्ता प्रॉपर्टी, उन उपयोगकर्ताओं के लिए यूनीक होती हैं जिन्होंने उन्हें बनाया है. इसका मतलब है कि प्रोजेक्ट में साथ मिलकर काम करने वाले लोग, आपकी उपयोगकर्ता प्रॉपर्टी को देख या ऐक्सेस नहीं कर सकते. साथ ही, आपके पास भी उनकी उपयोगकर्ता प्रॉपर्टी को देखने या ऐक्सेस करने का विकल्प नहीं होगा. अगर आपको प्रोजेक्ट से जुड़ी प्रॉपर्टी को सहयोगियों के साथ शेयर करना है, तो स्क्रिप्ट प्रॉपर्टी का इस्तेमाल करें. ज़्यादा जानकारी के लिए, प्रॉपर्टी गाइड देखें.