如要透過終端機開發及管理 Google Apps Script 專案,而非使用 Apps Script 編輯器,請使用開放原始碼工具 clasp。
clasp 程式碼研究室會概略介紹所有
clasp 功能。
功能
clasp 包含下列功能:
在本機開發
clasp 可讓您在本機開發 Apps Script 專案。在自己的電腦上編寫程式碼,完成後上傳至 Apps Script。您也可以下載現有的 Apps Script 專案,以便離線編輯。建構 Apps Script 專案時,請使用您喜愛的開發工具,例如 git。
管理部署版本
建立、更新及查看專案的多個部署作業。
結構代碼
clasp 可讓您將程式碼整理到目錄中,上傳至 script.google.com 時會保留這些目錄。舉例來說:
# On script.google.com: ├── tests/slides.gs └── tests/sheets.gs # Locally: ├── tests/ │ ├─ slides.gs │ └─ sheets.gs
專案類型
您可以使用 clasp 管理獨立和容器繫結的指令碼專案。
獨立專案
獨立專案會以個別檔案的形式顯示在 Google 雲端硬碟中。您可以使用 clasp create 指令建立新的獨立指令碼。
繫結至容器的專案
容器繫結專案會附加至 Google 文件、試算表、簡報或 Google 表單檔案。您可以使用 clasp create 指令,建立附加至新檔案的新容器繫結指令碼。您也可以使用 --parentId 標記,將新指令碼附加至現有檔案。
其他專案類型
clasp 也支援為網頁應用程式和 API 建立指令碼。
需求條件
clasp 是以 Node.js 編寫,並使用 npm 工具發布。使用 clasp 前,請務必先安裝 Node.js 20.0.0 以上版本。安裝 Node.js 需要管理員權限。
安裝
安裝 Node.js 後,請使用下列 npm 指令安裝 clasp:
npm install @google/clasp -g
安裝完成後,即可從電腦上的任何目錄使用 clasp 指令。
使用clasp
使用 clasp 從指令列處理各種工作。本節說明使用 clasp 開發時的常見作業。
登入
這個指令會登入並授權管理 Google 帳戶的 Apps Script 專案。執行後,系統會要求您登入儲存 Apps Script 專案的 Google 帳戶。
clasp login
登出
這個指令會登出指令列工具。請使用 clasp login 重新登入,以便向 Google 重新驗證,然後繼續使用 clasp。
clasp logout
建立新的 Apps Script 專案
這個指令會在目前目錄中建立新指令碼,並可選擇性地設定指令碼標題。
clasp create [scriptTitle] [--type <projectType>] [--parentId <parentId>]
這項指令會使用下列選用參數:
scriptTitle:指令碼專案的標題。--type <projectType>:要建立的專案類型。允許的值為standalone、docs、sheets、slides、forms、webapp和api。--parentId <parentId>:現有 Google 雲端硬碟檔案 (文件、試算表、簡報或表單) 的 ID,新指令碼專案應繫結至該檔案。
這個指令也會在目前目錄中建立兩個檔案:
- 儲存指令碼 ID 的
.clasp.json檔案。 - 內含專案中繼資料的
appsscript.json專案資訊清單檔案。
複製現有專案
這個指令會複製目前目錄中的現有專案。您必須建立指令碼,或與 Google 帳戶共用指令碼。您只要提供指令碼 ID,即可指定要複製的指令碼專案。您可以複製獨立專案和繫結至容器的專案。
如要找出專案的指令碼 ID,請按照下列步驟操作:
- 開啟 Apps Script 專案。
- 按一下左側的「專案設定」 。
在「ID」下方,複製「指令碼 ID」。
扣環副本
下載指令碼專案
這項指令會將 Google 雲端硬碟中的 Apps Script 專案下載到電腦的檔案系統。
clasp pull
上傳指令碼專案
這個指令會將電腦上的所有指令碼專案檔案上傳至雲端硬碟。
clasp push
列出專案版本
這項指令會列出每個指令碼專案版本的編號和說明。
clasp versions
部署已發布的專案
將指令碼專案部署為網頁應用程式、Google Workspace 外掛程式或可執行檔。在指令碼編輯器、專案資訊清單中,或使用 clasp 建立部署作業。
如要使用 clasp 部署專案,請先建立 Apps Script 專案的不可變更版本。版本是指令碼專案的「快照」,類似於唯讀的分支版本。
clasp version [description]
這項指令會顯示新建立的版本號碼。使用該編號部署及取消部署專案執行個體:
clasp deploy [version] [description]
clasp undeploy <deploymentId>
這項指令會使用新版本和說明更新現有部署作業:
clasp redeploy <deploymentId> <version> <description>
列出部署作業
這項指令會列出指令碼專案的部署 ID、版本和說明。
clasp deployments
在 Apps Script 編輯器中開啟專案
這個指令會在 Apps Script 編輯器中開啟指令碼專案。 編輯器會在預設網路瀏覽器中開啟新分頁。
clasp open-script
為 clasp 開放原始碼專案貢獻心力
在 GitHub 上協助改善 clasp。