গুগল অ্যাপস স্ক্রিপ্ট এমন সব ফিচার প্রদান করে যা টিমকে একসাথে স্ক্রিপ্ট, গুগল ওয়ার্কস্পেস অ্যাড-অন এবং ওয়েব অ্যাপ তৈরি ও রক্ষণাবেক্ষণ করতে সাহায্য করে। এই গাইডটি একাধিক ডেভেলপারের একটি প্রোজেক্টে সক্রিয় সহযোগিতার বিষয়টি আলোচনা করে; আপনি যদি অন্যদের তাদের নিজস্ব প্রোজেক্টে অন্তর্ভুক্ত করার জন্য কোড শেয়ার করতে চান, তাহলে এর পরিবর্তে লাইব্রেরি গাইডটি দেখুন।
সহযোগিতার মূল বিষয়গুলি
কোনো প্রকল্পে একসাথে কাজ করার জন্য, আপনার এবং আপনার সহযোগীদের সকলেরই অ্যাপস স্ক্রিপ্ট প্রজেক্ট ফাইলে (এবং যদি এটি একটি বাউন্ড স্ক্রিপ্ট হয়, তবে এর কন্টেইনারেও) এডিটর অ্যাক্সেস থাকতে হবে। এর ফলে আপনার দলের প্রত্যেকে অ্যাপস স্ক্রিপ্ট কোড দেখতে এবং তাতে পরিবর্তন করতে পারে। এডিটররা নতুন কোড ভার্সন তৈরি করতে, অ্যাড-অন প্রকাশ করতে এবং স্ক্রিপ্টগুলোকে ওয়েব অ্যাপ বা অ্যাপস স্ক্রিপ্ট এপিআই-এর জন্য এক্সিকিউটেবল হিসেবে ডেপ্লয় করতে পারেন।
আপনার প্রজেক্ট, অ্যাড-অন বা ওয়েব অ্যাপের সম্পাদনা, পর্যালোচনা, ভার্সনিং এবং (প্রযোজ্য ক্ষেত্রে) ডেপ্লয়মেন্ট ও পাবলিশিং কীভাবে করবেন, তা আগে থেকেই পরিকল্পনা করে নিন। স্বতন্ত্র প্রজেক্টগুলোতে সাধারণত একসাথে কাজ করা সবচেয়ে সহজ, কারণ এগুলো সরাসরি গুগল ড্রাইভে দেখা যায় এবং অ্যাড-অন ও ওয়েব অ্যাপ ডেভেলপমেন্টের জন্য এটিই প্রস্তাবিত প্রজেক্টের ধরন।
সহযোগিতামূলক কাজে একটি সাধারণ সমস্যা দেখা দেয় যখন কোনো স্ক্রিপ্ট প্রজেক্টের মালিক টিমের অন্য কাউকে প্রজেক্টটির মালিকানা হস্তান্তর না করেই টিম ছেড়ে চলে যান। এর ফলে আপনি প্রজেক্টটি রক্ষণাবেক্ষণ বা আপডেট করতে অক্ষম হতে পারেন। আপনার স্ক্রিপ্ট প্রজেক্টটি একটি শেয়ার্ড ড্রাইভে রাখলে এই সমস্যাটি এড়ানো যায়, কারণ শেয়ার্ড ড্রাইভের ফাইলগুলোর কোনো নির্দিষ্ট মালিক থাকে না।
স্ক্রিপ্ট প্রোজেক্টের মালিকানা সবসময় ভাগ করে নিন। যদি কেউ আপনার প্রতিষ্ঠান ছেড়ে চলে যায় এবং তার অ্যাকাউন্টটি মুছে ফেলা হয়, তাহলে অন্য মালিকবিহীন স্ক্রিপ্টগুলোতে প্রবেশাধিকার হারিয়ে যায়। আপনার স্ক্রিপ্টটি ড্রাইভে শেয়ার করুন অথবা এটিকে একটি শেয়ারড ড্রাইভে সরিয়ে নিন ।
clasp কমান্ড-লাইন টুলের সাহায্যে সহযোগিতা করুন
clasp আপনাকে script.google.com এবং আপনার লোকাল ফাইল সিস্টেমের মধ্যে প্রোজেক্ট সিঙ্ক করতে দেয়। আপনি এবং আপনার সহযোগীরা যদি git এর মতো সোর্স কন্ট্রোল ম্যানেজমেন্ট সফটওয়্যার ব্যবহার করেন, তবে এটি আপনার কোড ডেভেলপমেন্টকে আরও সহজ ও স্বয়ংক্রিয় করতে সাহায্য করে।
আরও বিস্তারিত জানতে, clasp ব্যবহার করে কমান্ড লাইন ইন্টারফেস নির্দেশিকাটি দেখুন।
শেয়ার করা ড্রাইভ ব্যবহার করে সহযোগিতা করুন
শেয়ার্ড ড্রাইভ শুধুমাত্র গুগল ওয়ার্কস্পেস বিজনেস এবং গুগল ওয়ার্কস্পেস এন্টারপ্রাইজ গ্রাহকদের জন্য উপলব্ধ।
শেয়ার্ড ড্রাইভ, ড্রাইভ-এর মধ্যে একটি শেয়ার্ড স্পেস প্রদান করে যেখানে ড্রাইভ ব্যবহারকারীদের দল আরও কার্যকরভাবে একসাথে কাজ করতে পারে। শেয়ার্ড ড্রাইভে রাখা ফাইলগুলির মালিকানা কোনো ব্যক্তির না হয়ে, পুরো দলের থাকে। এর মানে হলো, যখন কোনো সহযোগী দল ছেড়ে চলে যায়, তখন ফাইলের মালিকানা এবং নিয়ন্ত্রণ তার সাথে চলে যায় না।
শেয়ার্ড ড্রাইভ আপনাকে বিভিন্ন ডোমেইনের মধ্যে ফাইল স্থানান্তর করার সুযোগ দেয় — একটি ডোমেইনের শেয়ার্ড ড্রাইভে অন্য ডোমেইনের সহযোগীরা থাকতে পারে, যারা সেই ডোমেইন থেকে ফাইল স্থানান্তর করে শেয়ার্ড ড্রাইভে রাখতে পারে। এর মাধ্যমে একটি দল বিভিন্ন ডোমেইনের গ্রাহকদের জন্য অ্যাড-অন, ওয়েব অ্যাপ বা অন্যান্য কোড তৈরি করতে পারে।
যখন আপনি অ্যাপস স্ক্রিপ্ট প্রোজেক্টে সম্মিলিতভাবে কাজ করার জন্য শেয়ার্ড ড্রাইভ ব্যবহার করেন:
- শেয়ার করা ড্রাইভে এডিটর অ্যাক্সেস থাকা সহযোগীরা সেই ড্রাইভে নতুন ফাইল তৈরি বা স্থানান্তর করতে পারেন। স্ক্রিপ্ট এডিটর হিসেবে, তারা স্ক্রিপ্ট প্রজেক্ট দেখতে ও সম্পাদনা করতে, স্ক্রিপ্ট কোড চালাতে, স্ক্রিপ্টের নতুন সংস্করণ তৈরি করতে এবং অ্যাড-অন প্রকাশ করতে পারেন।
- অ্যাপস স্ক্রিপ্ট এপিআই (Apps Script API)- এর জন্য স্ক্রিপ্টগুলোকে ওয়েব অ্যাপ বা এক্সিকিউটেবল হিসেবে ডেপ্লয় করতে হলে, যে অ্যাকাউন্টটি ডেপ্লয়মেন্ট তৈরি করবে, সেটিকে অবশ্যই সেই শেয়ার্ড ড্রাইভের ডোমেইনের অন্তর্ভুক্ত হতে হবে যেখানে স্ক্রিপ্টটি থাকে।
- শেয়ার্ড ড্রাইভ আপনাকে গ্রুপের বাইরের অন্যদের সাথে সেই ড্রাইভের নির্দিষ্ট ফাইল শেয়ার করতে এবং অন্য যেকোনো ড্রাইভ ফাইলের মতোই সেগুলিতে তাদের সম্পাদনা ও দেখার অনুমতি আপডেট করতে দেয়। তবে, যদি কোনো ব্যবহারকারী সেই টিমের অংশ হন যার শেয়ার্ড ড্রাইভটি রয়েছে, তাহলে আপনি নির্দিষ্ট ফাইলের জন্য তার অ্যাক্সেস কমাতে পারবেন না। উদাহরণস্বরূপ, যদি কোনো ব্যবহারকারীর একটি শেয়ার্ড ড্রাইভে সম্পাদনার অ্যাক্সেস থাকে, তাহলে আপনি সেই শেয়ার্ড ড্রাইভের মধ্যে থাকা কোনো নির্দিষ্ট ফাইলের জন্য তার অ্যাক্সেস পরিবর্তন করে শুধু দেখার অ্যাক্সেস দিতে পারবেন না।
- শেয়ার করা ড্রাইভে সম্পূর্ণ অ্যাক্সেস থাকা সহযোগীরা ফাইল ও অ্যাপস স্ক্রিপ্ট প্রজেক্ট ডিলিট করতে এবং শেয়ার করা ড্রাইভের বাইরে ফাইল সরিয়ে নিতে পারেন।
- কন্টেইনারের সাথে সংযুক্ত সমস্ত স্ক্রিপ্ট কন্টেইনার ফাইলের জন্য সংজ্ঞায়িত একই ভিউয়ার এবং এডিটর অ্যাক্সেস তালিকা ব্যবহার করে। উদাহরণস্বরূপ, যদি আপনার একটি গুগল শিটে সম্পাদনার অ্যাক্সেস থাকে, তবে এর সাথে সংযুক্ত যেকোনো অ্যাপস স্ক্রিপ্ট প্রজেক্ট কোডেও আপনার সম্পাদনার অ্যাক্সেস থাকবে। এই ধরনের একটি কন্টেইনার ফাইল কোনো শেয়ার্ড ড্রাইভে রাখলে, সেই ড্রাইভের সহযোগীরা স্ক্রিপ্ট কোডটিতেও কন্টেইনারটির মতোই একই অ্যাক্সেস পেয়ে যান।
- যখন কোনো স্ক্রিপ্ট প্রজেক্ট একটি শেয়ার্ড ড্রাইভে থাকে, তখন এর গুগল ক্লাউড প্রজেক্টে অ্যাক্সেস সীমাবদ্ধ থাকতে পারে। বিস্তারিত জানতে গুগল ক্লাউড প্রজেক্ট এবং শেয়ার্ড ড্রাইভ গাইড বিভাগটি দেখুন।
- এক ডোমেইনে ডেপ্লয় করা ওয়েব অ্যাপগুলো কাজ করা বন্ধ করে দেয়, যদি সেগুলোর মালিকানা অন্য ডোমেইনের কোনো শেয়ার্ড ড্রাইভ বা অ্যাকাউন্টে পরিবর্তিত হয়। স্ক্রিপ্টটিকে তার মূল ডোমেইনে ফিরিয়ে এনে এটি ঠিক করুন।
- একইভাবে, অ্যাপস স্ক্রিপ্ট এপিআই এক্সিকিউটেবল হিসেবে ডেপ্লয় করা স্ক্রিপ্ট প্রজেক্টগুলো যদি শেয়ার্ড ড্রাইভের মাধ্যমে এক ডোমেইন থেকে অন্য ডোমেইনে সরানো হয়, তবে এপিআই দ্বারা কল করা হলে সেগুলো কাজ করা বন্ধ করে দেয়। স্ক্রিপ্টটিকে তার মূল ডোমেইনে ফিরিয়ে এনে এটি ঠিক করুন।
একটি শেয়ার করা ফোল্ডারের মাধ্যমে সহযোগিতা করুন
কোনো অ্যাপস স্ক্রিপ্ট প্রজেক্ট তৈরি বা শেয়ার্ড ফোল্ডারে সরানোর সময় সতর্কতা অবলম্বন করুন। নিশ্চিত করুন যে ফোল্ডারটি শুধুমাত্র বিশ্বস্ত ব্যক্তিদের সাথেই শেয়ার করা হয়েছে।
যদি আপনি একটি শেয়ার্ড ড্রাইভের মাধ্যমে একসাথে কাজ করতে না পারেন, তবে তার পরিবর্তে একটি শেয়ার্ড ফোল্ডার ব্যবহার করুন। যখন আপনি একটি অ্যাপস স্ক্রিপ্ট প্রজেক্ট তৈরি করেন বা এমন একটি ড্রাইভ ফোল্ডারে সরান যেখানে অন্যরাও প্রবেশ করতে পারে, তখন তারা ফোল্ডারটির জন্য তাদের যে অ্যাক্সেস থাকে, অ্যাপস স্ক্রিপ্ট প্রজেক্টটির জন্যও একই অ্যাক্সেস পেয়ে যায়। উদাহরণস্বরূপ:
- যদি কারও ফোল্ডারটি সম্পাদনা করার অনুমতি থাকে, তবে তারা অ্যাপস স্ক্রিপ্ট প্রজেক্টটি সম্পাদনা বা মুছে ফেলতে এবং স্ক্রিপ্টটি চালাতে পারবে।
- যদি কারও ফোল্ডারটিতে শুধুমাত্র দেখার অ্যাক্সেস থাকে, তাহলে তারা অ্যাপস স্ক্রিপ্ট প্রজেক্টটি দেখতে এবং স্ক্রিপ্টটি চালাতে পারবে।
প্রকল্প ভাগাভাগির মাধ্যমে সহযোগিতা করুন
সকল সহযোগীর সাথে সরাসরি প্রজেক্টটি শেয়ার করে প্রকল্পে সহযোগিতা করুন। সাধারণ ড্রাইভ ফোল্ডারে বা শেয়ার্ড ড্রাইভে থাকা স্ক্রিপ্ট প্রজেক্টগুলো সরাসরি শেয়ার করুন। সময়ের সাথে সাথে স্ক্রিপ্টটির মালিক কে হবে এবং কে এটি রক্ষণাবেক্ষণ করবে, তা সতর্কতার সাথে পরিকল্পনা করুন।
স্বতন্ত্র প্রোজেক্টগুলো ড্রাইভে একটি ফাইল হিসেবে দেখা যায়; অন্য যেকোনো ফাইলের মতোই এগুলো শেয়ার করুন। আরও তথ্যের জন্য, ফাইল ও ফোল্ডার শেয়ার করা দেখুন।
কন্টেইনার-বাউন্ড প্রজেক্টগুলো ড্রাইভে দেখা যায় না। একটি কন্টেইনার-বাউন্ড প্রজেক্ট শেয়ার করতে হলে, এর প্যারেন্ট কন্টেইনার ফাইলটি শেয়ার করুন। উদাহরণস্বরূপ, যদি আপনার একটি স্ক্রিপ্ট গুগল শিটস স্প্রেডশিটের সাথে যুক্ত থাকে, তবে কাউকে স্প্রেডশিটটির এডিটর করার মাধ্যমে তাকে স্ক্রিপ্টটির এডিটর করুন। কন্টেইনার-বাউন্ড প্রজেক্টগুলো তাদের কন্টেইনার ফাইলের ভিউয়ার এবং এডিটর অ্যাক্সেস সেটিংস উত্তরাধিকারসূত্রে পায়।
কন্টেইনারের অভ্যন্তরে থাকা সমস্ত স্ক্রিপ্ট কন্টেইনার ফাইলের জন্য সংজ্ঞায়িত একই মালিক, দর্শক এবং সম্পাদক অ্যাক্সেস তালিকা ব্যবহার করে । কে একটি নতুন স্ক্রিপ্ট প্রজেক্ট তৈরি করেছে তা নির্বিশেষে, কন্টেইনারের মালিকই সেটির মালিকানা লাভ করেন।
সহযোগিতা এবং প্রকল্পের সম্পদ
রিসোর্স হলো এমন সত্তা যা আপনার প্রোজেক্টের সাথে যুক্ত থাকে কিন্তু এর কোড থেকে স্বাধীনভাবে বিদ্যমান থাকে। এই বিভাগে ব্যাখ্যা করা হয়েছে কীভাবে একটি প্রোজেক্টে সহযোগিতা করা এর রিসোর্সগুলোকে প্রভাবিত করে, বিশেষ করে: এর গুগল ক্লাউড প্রোজেক্ট, ট্রিগার, লাইব্রেরি এবং ব্যবহারকারীর বৈশিষ্ট্যগুলোকে।
সহযোগিতা এবং গুগল ক্লাউড প্রকল্প
প্রতিটি অ্যাপস স্ক্রিপ্ট প্রজেক্টের সাথে একটি গুগল ক্লাউড প্রজেক্ট যুক্ত থাকে। গুগল ক্লাউড প্রজেক্টগুলোর নিজস্ব মালিক, সম্পাদক এবং অন্যান্য ভূমিকা থাকে, যা স্ক্রিপ্ট প্রজেক্টটি অ্যাক্সেস করতে পারে এমন ব্যবহারকারীদের থেকে ভিন্ন হতে পারে।
সহযোগিতা এবং উদ্দীপক
যখন আপনি কোনো প্রকল্পে সহযোগিতা করেন, তখন আপনার তৈরি করা কোনো ইনস্টলযোগ্য ট্রিগার সেই প্রকল্পে অ্যাক্সেস থাকা ব্যক্তিদের সাথে শেয়ার করা হয় না। যদি সকল সহযোগীর জন্য একটি সামঞ্জস্যপূর্ণ ট্রিগার সেটআপের প্রয়োজন হয়, তবে রান টাইমে প্রোগ্রাম্যাটিকভাবে ট্রিগার তৈরি করতে স্ক্রিপ্ট সার্ভিস ব্যবহার করুন। আরও তথ্যের জন্য, ‘প্রোগ্রাম্যাটিকভাবে ট্রিগার পরিচালনা’ দেখুন।
যেহেতু সিম্পল ট্রিগারগুলো কোড থেকে তৈরি করা হয়, তাই সেগুলো প্রজেক্টের সহযোগীদের সাথে শেয়ার করা হয় ।
সহযোগিতা এবং গ্রন্থাগার
আপনার প্রোজেক্টে অন্তর্ভুক্ত লাইব্রেরিগুলো প্রোজেক্টের সহযোগীদের জন্য উপলব্ধ থাকে। তবে, অন্তর্ভুক্ত কোনো লাইব্রেরিতে তাদের যদি অন্তত রিড-লেভেল অ্যাক্সেস না থাকে, তাহলে তারা সেই লাইব্রেরিগুলো ব্যবহার করতে পারবে না — এক্ষেত্রে স্ক্রিপ্টটি একটি এরর দেখাবে। লাইব্রেরি সম্পর্কে আরও তথ্যের জন্য, ‘লাইব্রেরি ব্যবস্থাপনা’ দেখুন।
সহযোগিতা এবং ব্যবহারকারীর বৈশিষ্ট্য
ব্যবহারকারীর প্রোপার্টিগুলো শুধুমাত্র সেই ব্যবহারকারীর জন্যই অনন্য যিনি সেগুলি তৈরি করেছেন। এর মানে হলো, প্রোজেক্টের সহযোগীরা আপনার ব্যবহারকারীর প্রোপার্টিগুলো দেখতে বা অ্যাক্সেস করতে পারবেন না এবং আপনিও তাদের প্রোপার্টিগুলো দেখতে বা অ্যাক্সেস করতে পারবেন না। সহযোগীদের সাথে প্রোজেক্ট-নির্দিষ্ট প্রোপার্টি শেয়ার করতে চাইলে স্ক্রিপ্ট প্রোপার্টি ব্যবহার করুন। আরও তথ্যের জন্য, প্রোপার্টি গাইড দেখুন।