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

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

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

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

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

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

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

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

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

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

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

ไดรฟ์ที่แชร์พร้อมให้บริการแก่ลูกค้า Google Workspace Business และ Google Workspace Enterprise เท่านั้น

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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