ทำงานร่วมกับนักพัฒนาซอฟต์แวร์คนอื่นๆ

Apps Script มีฟีเจอร์บางอย่างที่จะช่วยให้คุณและนักพัฒนาซอฟต์แวร์คนอื่นๆ สร้าง และดูแลรักษาสคริปต์ ส่วนเสริม และเว็บแอปได้พร้อมกัน

ข้อมูลพื้นฐานเกี่ยวกับการทำงานร่วมกัน

หากต้องการทำงานร่วมกันในโปรเจ็กต์ คุณและผู้ทำงานร่วมกันทุกคนต้องมีสิทธิ์เข้าถึงระดับเอดิเตอร์ในไฟล์โปรเจ็กต์ Apps Script (และคอนเทนเนอร์ของไฟล์ หากเป็นสคริปต์ที่เชื่อมโยง) ซึ่งจะช่วยให้ทุกคนในทีม ดูและทำการเปลี่ยนแปลงโค้ด Apps Script ได้ นอกจากนี้ ผู้แก้ไขยังสร้างโค้ดเวอร์ชันใหม่ เผยแพร่ส่วนเสริม และทำให้สคริปต์ใช้งานได้เป็นเว็บแอปหรือเป็นไฟล์ที่เรียกใช้ได้สำหรับ Apps Script API

คุณช่วยทีมได้โดยวางแผนล่วงหน้าว่าจะจัดการการแก้ไข การตรวจสอบ การควบคุมเวอร์ชัน และ (หากมี) การติดตั้งใช้งานและการเผยแพร่โปรเจ็กต์ ส่วนเสริม หรือเว็บแอปอย่างไร โปรเจ็กต์แบบสแตนด์อโลนมักจะทำงานร่วมกันได้ง่ายที่สุด เนื่องจากจะปรากฏใน Google ไดรฟ์โดยตรง และเป็นประเภทโปรเจ็กต์ที่แนะนำสำหรับการพัฒนาส่วนเสริมและเว็บแอป

ปัญหาที่พบบ่อยในการทำงานร่วมกันคือเมื่อเจ้าของโปรเจ็กต์สคริปต์ออกจากทีมโดยไม่ได้โอนสิทธิ์ความเป็นเจ้าของโปรเจ็กต์ให้ผู้อื่นในทีม ซึ่งอาจทำให้คุณดูแลรักษาหรืออัปเดตโปรเจ็กต์ไม่ได้ การวางโปรเจ็กต์สคริปต์ในไดรฟ์ที่แชร์จะช่วยป้องกันปัญหานี้ได้ เนื่องจากไฟล์ในไดรฟ์ที่แชร์ไม่มีเจ้าของที่เฉพาะเจาะจง

ทำงานร่วมกันด้วยclaspเครื่องมือบรรทัดคำสั่ง

clasp ช่วยให้คุณซิงค์โปรเจ็กต์ระหว่าง script.google.com กับระบบไฟล์ในเครื่องได้ ซึ่งจะช่วยให้คุณปรับปรุงและทำให้การพัฒนาโค้ดเป็นไปโดยอัตโนมัติได้หากคุณและผู้ร่วมงานใช้ซอฟต์แวร์การจัดการการควบคุมแหล่งที่มา เช่น git

โปรดดูรายละเอียดเพิ่มเติมที่อินเทอร์เฟซบรรทัดคำสั่ง โดยใช้claspคู่มือ

ทำงานร่วมกันด้วยไดรฟ์ที่แชร์

ไดรฟ์ที่แชร์ (เดิมเรียกว่า "ไดรฟ์ของทีม") เป็นพื้นที่ที่ใช้ร่วมกันใน Google ไดรฟ์ ซึ่งกลุ่มผู้ใช้ไดรฟ์ สามารถทำงานร่วมกันได้อย่างมีประสิทธิภาพมากขึ้น ไฟล์ที่อยู่ในไดรฟ์ที่แชร์จะเป็นของกลุ่มโดยรวม ไม่ใช่ของแต่ละบุคคล ซึ่งหมายความว่าเมื่อผู้ร่วมแก้ไขออกจากกลุ่ม ผู้ร่วมแก้ไขจะไม่เป็นเจ้าของและควบคุมไฟล์

นอกจากนี้ ไดรฟ์ที่แชร์ยังช่วยให้คุณย้ายไฟล์ข้ามโดเมนได้ด้วย โดยไดรฟ์ที่แชร์ในโดเมนหนึ่งอาจมีผู้ทำงานร่วมกันจากอีกโดเมนหนึ่งซึ่งสามารถย้ายไฟล์จากโดเมนนั้นไปยังไดรฟ์ที่แชร์ได้ ซึ่งจะเป็นประโยชน์อย่างยิ่งสำหรับนักพัฒนา Apps Script เนื่องจากเป็นวิธีที่ทีมจะพัฒนาส่วนเสริม เว็บแอป หรือโค้ดอื่นๆ สำหรับลูกค้าในโดเมนต่างๆ ได้

เมื่อใช้ไดรฟ์ที่แชร์เพื่อทำงานร่วมกันในโปรเจ็กต์ Apps Script โปรดคำนึงถึงสิ่งต่อไปนี้

  1. ผู้ทำงานร่วมกันที่มีสิทธิ์เข้าถึงระดับเอดิเตอร์ในไดรฟ์ที่แชร์จะสร้างหรือย้าย ไฟล์ใหม่ไปยังไดรฟ์ที่แชร์ได้ ในฐานะเครื่องมือแก้ไขสคริปต์ ผู้ใช้จะดูและแก้ไข โปรเจ็กต์สคริปต์ เรียกใช้โค้ดสคริปต์ สร้างสคริปต์เวอร์ชันใหม่ และเผยแพร่ส่วนเสริมได้
  2. หากต้องการติดตั้งใช้งานสคริปต์เป็นเว็บแอปหรือไฟล์ที่เรียกใช้งานได้สำหรับ Apps Script API บัญชีที่สร้างการติดตั้งใช้งานต้องอยู่ในโดเมนเดียวกันกับ ไดรฟ์ที่ใช้ร่วมกันซึ่งสคริปต์อยู่
  3. ไดรฟ์ที่แชร์ช่วยให้คุณแชร์ไฟล์ที่เฉพาะเจาะจงภายในไดรฟ์ที่แชร์กับ บุคคลภายนอกกลุ่ม และอัปเดตสิทธิ์แก้ไขและดูใน ไฟล์เหล่านั้นได้เหมือนกับไฟล์อื่นๆ ในไดรฟ์ แต่หากผู้ใช้เป็น ส่วนหนึ่งของ ทีมที่เป็นเจ้าของไดรฟ์ที่แชร์ คุณจะลดสิทธิ์เข้าถึง ไฟล์ใดไฟล์หนึ่งไม่ได้ เช่น หากผู้ใช้มีสิทธิ์แก้ไขในไดรฟ์ที่แชร์ คุณจะเปลี่ยนสิทธิ์ดังกล่าวเป็นสิทธิ์เข้าถึงแบบดูอย่างเดียวสำหรับไฟล์ใดไฟล์หนึ่งในไดรฟ์ที่แชร์ไม่ได้
  4. ผู้ร่วมแก้ไขที่มีสิทธิ์เข้าถึงแบบเต็มในไดรฟ์ที่แชร์จะลบไฟล์ และโปรเจ็กต์ Apps Script รวมถึงย้ายไฟล์ออกจาก ไดรฟ์ที่แชร์ได้ด้วย
  5. สคริปต์ที่ผูกกับคอนเทนเนอร์ทั้งหมด ใช้รายการการเข้าถึงของผู้ชมและผู้แก้ไขเดียวกันที่กำหนดไว้สำหรับไฟล์คอนเทนเนอร์ เช่น หากคุณมีสิทธิ์แก้ไขใน Google ชีต คุณก็จะมีสิทธิ์แก้ไขโค้ดโปรเจ็กต์ Apps Script ที่แนบมากับชีตนั้นด้วย การวางไฟล์คอนเทนเนอร์ดังกล่าวลงในไดรฟ์ที่แชร์จะทำให้ผู้ทำงานร่วมกันในไดรฟ์ที่แชร์ มีสิทธิ์เข้าถึงโค้ดสคริปต์แบบเดียวกับที่ใช้สำหรับคอนเทนเนอร์เอง
  6. เมื่อโปรเจ็กต์สคริปต์อยู่ในไดรฟ์ที่แชร์ ระบบอาจจำกัดการเข้าถึง โปรเจ็กต์ Cloud Platform (GCP) ของโปรเจ็กต์สคริปต์ ดูรายละเอียดได้ที่ส่วนคำแนะนำเกี่ยวกับโปรเจ็กต์ GCP และไดรฟ์ที่แชร์
  7. เว็บแอป ที่ติดตั้งใช้งานในโดเมนหนึ่งจะหยุดทำงานหากมีการเปลี่ยนความเป็นเจ้าของเป็น ไดรฟ์ที่แชร์หรือบัญชีในโดเมนอื่น คุณแก้ไขปัญหานี้ได้โดย ย้ายสคริปต์กลับไปยังโดเมนเดิม
  8. ในทำนองเดียวกัน โปรเจ็กต์สคริปต์ที่ทำให้ใช้งานได้เป็น Apps Script API จะหยุดทำงานเมื่อ API เรียกใช้หากย้ายผ่านไดรฟ์ที่แชร์จากโดเมนหนึ่งไปยังอีกโดเมนหนึ่ง คุณแก้ไขปัญหานี้ได้โดยย้ายสคริปต์กลับไปที่โดเมนเดิม

ทำงานร่วมกันโดยใช้โฟลเดอร์ที่แชร์

หากทำงานร่วมกันในไดรฟ์ที่แชร์ไม่ได้ คุณสามารถใช้โฟลเดอร์ที่แชร์แทนได้ เมื่อสร้างหรือย้ายโปรเจ็กต์ Apps Script ไปยังโฟลเดอร์ Google ไดรฟ์ที่ผู้อื่นเข้าถึงได้ ผู้อื่นจะได้รับสิทธิ์เข้าถึงโปรเจ็กต์ Apps Script เดียวกันกับที่ได้รับสำหรับโฟลเดอร์ เช่น

  • หากมีสิทธิ์แก้ไขโฟลเดอร์ ผู้ใช้จะแก้ไขหรือลบโปรเจ็กต์ Apps Script และเรียกใช้สคริปต์ได้
  • หากมีเพียงสิทธิ์ดูโฟลเดอร์ ผู้ใช้จะดู โปรเจ็กต์ Apps Script และเรียกใช้สคริปต์ได้

ทำงานร่วมกันด้วยการแชร์โปรเจ็กต์

คุณสามารถทำงานร่วมกันในโปรเจ็กต์ได้โดยแชร์โปรเจ็กต์กับผู้ทำงานร่วมกันทั้งหมดโดยตรง คุณแชร์โปรเจ็กต์สคริปต์ที่อยู่ในโฟลเดอร์ Google ไดรฟ์ปกติหรือในไดรฟ์ที่แชร์ได้โดยตรง หากคุณใช้วิธีนี้ เราขอแนะนำให้คุณวางแผนอย่างรอบคอบว่าใครจะเป็นเจ้าของและดูแลรักษาสคริปต์เมื่อเวลาผ่านไป

โปรเจ็กต์แบบสแตนด์อโลนจะปรากฏใน Google ไดรฟ์เป็นไฟล์ และคุณแชร์โปรเจ็กต์ได้เหมือนกับไฟล์อื่นๆ ดูข้อมูลเพิ่มเติมได้ที่การแชร์ไฟล์และโฟลเดอร์

โปรเจ็กต์ที่ผูกกับคอนเทนเนอร์จะไม่ปรากฏใน Google ไดรฟ์ หากต้องการแชร์โปรเจ็กต์ที่เชื่อมโยงกับคอนเทนเนอร์ ให้แชร์ไฟล์คอนเทนเนอร์หลัก ตัวอย่างเช่น หากคุณมีสคริปต์ที่เชื่อมโยงกับสเปรดชีตใน Google ชีต คุณ สามารถให้สิทธิ์ผู้ใช้เป็นผู้แก้ไขสคริปต์ได้โดยให้สิทธิ์ผู้ใช้เป็นผู้แก้ไข สเปรดชีต โปรเจ็กต์ที่เชื่อมโยงกับคอนเทนเนอร์จะรับค่าการตั้งค่าสิทธิ์เข้าถึงระดับผู้ดูและผู้แก้ไข ของไฟล์คอนเทนเนอร์

สคริปต์ที่เชื่อมโยงกับคอนเทนเนอร์ทั้งหมดจะใช้รายการการเข้าถึงระดับเจ้าของ ผู้ดู และ ผู้แก้ไขเดียวกันที่กำหนดไว้สำหรับไฟล์คอนเทนเนอร์ เจ้าของคอนเทนเนอร์จะ เป็นเจ้าของโปรเจ็กต์สคริปต์ใหม่ไม่ว่าใครจะเป็นผู้สร้างก็ตาม

การทำงานร่วมกันและทรัพยากรของโปรเจ็กต์

ทรัพยากรคือเอนทิตีที่เชื่อมโยงกับโปรเจ็กต์ แต่มีอยู่ แยกจากโค้ดของโปรเจ็กต์ ส่วนนี้อธิบายว่าการทำงานร่วมกันในโปรเจ็กต์ส่งผลต่อทรัพยากรของโปรเจ็กต์อย่างไร โดยเฉพาะอย่างยิ่งโปรเจ็กต์ Cloud Platform, ทริกเกอร์ ไลบรารี และพร็อพเพอร์ตี้ของผู้ใช้

การทำงานร่วมกันและโปรเจ็กต์ Google Cloud

ทุกโปรเจ็กต์ Apps Script จะมีโปรเจ็กต์ Google Cloud ที่เชื่อมโยงอยู่ โปรเจ็กต์ Google Cloud มีชุดเจ้าของ ผู้แก้ไข และบทบาทอื่นๆ ของตัวเอง ซึ่งอาจแตกต่างจากชุดผู้ใช้ที่เข้าถึงโปรเจ็กต์สคริปต์ได้

หากต้องการเผยแพร่โปรเจ็กต์สคริปต์เป็นส่วนเสริม โปรเจ็กต์นั้นต้องใช้โปรเจ็กต์ Google Cloud มาตรฐาน เมื่อทำงานร่วมกันในแอปพลิเคชันที่ใช้โปรเจ็กต์ Google Cloud มาตรฐาน เราขอแนะนำให้คุณกำหนดค่าเจ้าของและบทบาทของ Google Cloud เพื่อให้มั่นใจว่าผู้ทำงานร่วมกันทุกคนมีสิทธิ์เข้าถึงในระดับที่เหมาะสม ซึ่งจะช่วย ป้องกันไม่ให้คุณเสียสิทธิ์เข้าถึงการตั้งค่า Cloud ของโปรเจ็กต์เนื่องจาก เจ้าของไม่ได้อยู่ในองค์กรของคุณอีกต่อไป ซึ่งมีความสำคัญอย่างยิ่ง สำหรับส่วนเสริม

การทำงานร่วมกันและทริกเกอร์

เมื่อทำงานร่วมกันในโปรเจ็กต์ ระบบจะไม่แชร์ทริกเกอร์ที่ติดตั้งได้ที่คุณสร้าง กับผู้ที่มีสิทธิ์เข้าถึงโปรเจ็กต์ของคุณ หากต้องการตั้งค่าทริกเกอร์ที่สอดคล้องกันสำหรับผู้ทำงานร่วมกันทั้งหมด คุณสามารถใช้บริการสคริปต์เพื่อสร้างทริกเกอร์ แบบเป็นโปรแกรมในเวลาที่รันได้ ดูข้อมูลเพิ่มเติมได้ที่ การจัดการทริกเกอร์โดยใช้โปรแกรม

การทำงานร่วมกันและคลัง

ไลบรารีที่รวมอยู่ในโปรเจ็กต์จะพร้อมใช้งานสำหรับผู้ทำงานร่วมกันในโปรเจ็กต์ อย่างไรก็ตาม หากไม่มีสิทธิ์เข้าถึงไลบรารีที่รวมไว้อย่างน้อยในระดับอ่าน ผู้ใช้จะใช้ไลบรารีเหล่านั้นไม่ได้ และสคริปต์จะแสดงข้อผิดพลาดในกรณีนี้ ดูข้อมูลเพิ่มเติมเกี่ยวกับคลังได้ที่การจัดการคลัง

การทำงานร่วมกันและพร็อพเพอร์ตี้ผู้ใช้

พร็อพเพอร์ตี้ผู้ใช้ จะเฉพาะเจาะจงกับผู้ใช้ที่สร้างพร็อพเพอร์ตี้นั้น ซึ่งหมายความว่าผู้ร่วมแก้ไขโปรเจ็กต์จะไม่เห็นหรือเข้าถึงพร็อพเพอร์ตี้ผู้ใช้ของคุณ และคุณก็จะไม่เห็นหรือเข้าถึงพร็อพเพอร์ตี้ของผู้ร่วมแก้ไขโปรเจ็กต์เช่นกัน ใช้พร็อพเพอร์ตี้สคริปต์หากต้องการแชร์พร็อพเพอร์ตี้เฉพาะโปรเจ็กต์กับผู้ทำงานร่วมกัน ดูข้อมูลเพิ่มเติมได้ที่คู่มือพร็อพเพอร์ตี้