Google Apps Script (GAS) 専用CLIツール clasp を利用することで、ブラウザ画面上ではなく、VS Codeなど任意のエディタでGASアプリの開発が可能になり、さらにはコマンドライン操作でのアプリのデプロイ、Gitでのソース管理も可能になります。
検証環境
- Windows 10 Pro
インストール
コマンドライン操作は PowerShell で実行しました。
Node.js & npm インストール
- Node.js インストーラ
- https://nodejs.org/ja/
- Windows x64 12.18.0 LTS
- https://nodejs.org/ja/
- Node.js と同時に npm もインストールされる
1 2 3 4 5
node -v # v12.18.0 npm -v # 6.14.4
clasp インストール
- インストール
1 2 3 4 5 6 7 8 9 10
npm install -g @google/clasp # C:\Users\hoge\AppData\Roaming\npm\clasp -> C:\Users\hoge\AppData\Roaming\npm\node_modules\@google\clasp\src\index.js # npm WARN inquirer-autocomplete-prompt@1.0.1 requires a peer of inquirer@^5.0.0 || ^6.0.0 but none is installed. You must install peer dependencies yourself. # + @google/clasp@2.3.0 # added 160 packages from 92 contributors in 14.381s clasp -v # 2.3.0
- 依存関係のあるパッケージがインストールされる
1 2 3 4 5 6 7 8 9 10 11 12 13 14
npm list # C:\Users\hoge\AppData\Roaming\npm # `-- @google/clasp@2.3.0 # +-- chalk@2.4.2 extraneous # ・・・ # +-- googleapis@42.0.0 extraneous # +-- UNMET PEER DEPENDENCY inquirer@7.2.0 extraneous # +-- inquirer-autocomplete-prompt@1.0.1 extraneous # ・・・ # `-- watch@1.0.2 extraneous # npm ERR! peer dep missing: inquirer@^5.0.0 || ^6.0.0, required by inquirer-autocomplete-prompt@1.0.1 # ・・・
- WARN (UNMET PEER DEPENDENCY) が出たので、
inquirer@6.0.0
を追加しました1 2 3 4 5 6 7 8 9 10
npm install inquirer@6.0.0 # npm notice created a lockfile as package-lock.json. You should commit this file. # + inquirer@6.0.0 # removed 9 packages, updated 12 packages, moved 1 package and audited 151 packages in 2.061s # 5 packages are looking for funding # run `npm fund` for details # found 0 vulnerabilities
Google Apps Script 連携
- Google Apps Script API 有効化
- https://script.google.com/home/usersettings
- Google Apps Script API を
オン
にする
- Google Apps Script API を
- https://script.google.com/home/usersettings
- アカウント連携
1
clasp login
ブラウザが起動するので、Googleアカウントへログイン&APIアクセス許可する
次の表示になればOK1 2 3 4 5 6 7 8 9 10 11
【ブラウザ】 Logged in! You may close this page. 【CLI】 Logging in globally... Authorize clasp by visiting this url: https://accounts.google.com/o/oauth2/v2/auth?・・・ Authorization successful. Default credentials saved to: ~\.clasprc.json (C:\Users\hoge\.clasprc.json).
clasp の使い方
GASプロジェクトのクローン・フェッチ
Webエディタ > ファイル > プロジェクトのプロパティ > 情報
からスクリプトID
を確認しておく1 2
clasp clone [スクリプトID] clasp pull
GASプロジェクトのプッシュ
.clasp.json
が存在するディレクトリで実行する1
clasp push
- アップロード可能なファイル
*.gs
*.html
appscript.json
- アップロードしないファイル
.claspignore
ファイルに記述