與其他開發人員合作

Apps Script 提供一些功能,可協助您和其他開發人員 以及維護指令碼、外掛程式和網頁應用程式

協同合作基本概念

如要協作處理專案,您和協作者都必須擁有 Apps Script 專案檔案 (及其容器,如果有的話) 的編輯者權限 繫結指令碼)。讓所有團隊成員都能參與其中 查看及變更 Apps Script 程式碼。編輯者也可以建立新程式碼 發布外掛程式,並將指令碼部署為網頁應用程式 Apps Script API

你可以事先規劃如何處理編輯作業 以及管理 專案、外掛程式或網頁應用程式 獨立專案 因為這類檔案會直接顯示在 Google 雲端硬碟中,而且 建議用於外掛程式和網頁應用程式開發的專案類型。

協作過程中,當指令碼的專案擁有者離開 並未將專案擁有權轉移給團隊的其他成員。 這可能會導致您無法維護或更新專案。透過 共用雲端硬碟中的指令碼專案無法防止 這個問題,因為共用雲端硬碟中的檔案沒有特定的擁有者。

使用 clasp 指令列工具協同合作

clasp 可讓你同步處理 script.google.com 與本機檔案之間的專案 有些人會將 Cloud Storage 視為檔案系統 但實際上不是這有助於簡化及自動開發程式碼,如有以下情況: 且協作者使用原始碼控管管理軟體,例如 git

詳情請參閱指令列介面 支援 clasp 指南

透過共用雲端硬碟協同合作

共用雲端硬碟 (舊稱為 「團隊雲端硬碟」) 是 Google 雲端硬碟中的共用空間,可用來建立雲端硬碟群組 使用者就能更有效率地協同合作儲存在共用雲端硬碟中的檔案為擁有者所有 而非個人也就是說 協作者離開群組,不取得檔案擁有權和控制權 具體做法是指示 Kubernetes 建立並維護 一或多個代表這些 Pod 的物件

共用雲端硬碟也允許在共用雲端硬碟中移動檔案。 在同一個網域中可以有其他網域的協作者,在其中移動檔案 將該網域加入共用雲端硬碟這對 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 呼叫時停止運作 複製到另一個網域如要修正這個問題,請將指令碼移回 原始網域。

透過共用資料夾協同合作

如果無法與共用雲端硬碟協作,可以使用共用資料夾。 。當您在 其他使用者可存取的 Google 雲端硬碟資料夾,會沿用相同的存取權 給該資料夾的 Apps Script 專案。 例如:

  • 如果某位使用者俱有資料夾的編輯權限,他們可以編輯或刪除該資料夾的 和 Apps Script 專案並執行指令碼。
  • 如果其他使用者只有資料夾的檢視權限,就可以查看 和 Apps Script 專案並執行指令碼。

透過專案共用功能協同合作

您可以直接與所有人共用專案,方便進行專案協作 然後討論合作的對象你可以直接共用一般的指令碼專案 Google 雲端硬碟資料夾或共用雲端硬碟。使用這個方法時, 建議您仔細規劃,長期下來由誰擁有並維護該腳本。

獨立專案會以檔案的形式顯示在 Google 雲端硬碟中,而且您可以與任何其他檔案一樣進行共用。如要 資訊,請參閱 共用檔案和資料夾

容器繫結專案不會在您的 Google 雲端硬碟。如要共用容器繫結專案,請共用父項 容器檔案舉例來說,如果您的指令碼與 Google 試算表繫結在一起 試算表, 就能讓他人成為指令碼的編輯者 試算表。容器繫結專案會繼承檢視者和編輯者存取權 專屬設定

所有容器繫結的指令碼都使用相同的擁有者、檢視者和 針對容器檔案定義的編輯者存取權清單。容器擁有者會 新指令碼專案的擁有權。

協作與專案資源

資源是與專案相關聯但存在的實體 而且完全不必依賴程式碼本節說明協作專案的方式 對資源的資源,尤其是 Cloud Platform 專案、觸發條件 程式庫和使用者屬性

協作與 Google Cloud 專案

每個 Apps Script 專案都有一個相關聯的 Google Cloud 專案。 Google Cloud 專案有一組專屬擁有者、編輯者和其他角色。 這類 ID 可以與可存取指令碼的使用者群組不同 專案。

如果您的指令碼專案用途是 外掛程式,必須使用 標準 Google Cloud 專案 協作使用標準 Google Cloud 專案的應用程式時,我們會 建議 由您設定 Google Cloud 擁有者和角色 確保所有協作者都擁有適當的存取層級這有助於 以免無法存取專案的 Cloud 設定 擁有者不再隸屬於您的機構。這點尤其重要 外掛程式

協同合作與觸發條件

協作處理專案時 可安裝的觸發條件 則不會與擁有專案存取權的使用者共用。如果您需要 因此您可以讓所有協作者使用一致的觸發條件設定 指令碼服務:用於建立觸發條件 以程式輔助的方式執行若需更多資訊,請參閲 透過程式輔助方式管理觸發條件

協作與資料庫

專案協作者可以存取專案中內含的程式庫。 但如果沒有至少要具備所包含程式庫的讀取層級存取權 無法使用這些程式庫,在此情況下,指令碼會擲回錯誤。 如要進一步瞭解程式庫,請參閱 管理程式庫

協作和使用者屬性

使用者屬性 專屬 ID也就是說, 專案協作者無法查看或存取您的使用者屬性,而您也無法存取 無法查看或存取他們的檔案使用 指令碼屬性 與協作者共用專案專屬屬性時,請選擇這個選項。適用對象 如需更多資訊,請參閱 屬性指南