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

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 Cloud, ทริกเกอร์, ไลบรารี และพร็อพเพอร์ตี้ผู้ใช้

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

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

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

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

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

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

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

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

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