はじめに
仕事で GAS(Google Apps Script) を触る機会があり、claspをインストールする機会がありましたので備忘録としてまとめてみました。
開発環境
- Windows10 Pro 64bit
- node v12.16.2
- npm 6.14.4
- clasp 2.3.0
claspとは
GAS(Google Apps Script)をローカル環境で管理することが出来るようになるツールです。
Googleから提供されています。
claspのインストール
npmを使います。
npm install @google/clasp -g
Google Apps Script APIを有効化する
Google Apps Script APIを有効化するために設定画面を開く。
Google Apps Script API の設定が「オフ」になっている場合は、「オン」に設定しておく。
ログイン
clasp login
コマンドでログインできる。
コマンドを叩くと同時にブラウザが立ち上がるのでログインする。
画面下部に表示される「許可ボタン」を押下すると、以下のようなメッセージが表示される。
Authorization successful.
Default credentials saved to: ~\.clasprc.json (C:\Users\xxxxxxxx\.clasprc.json).
ログイン情報の保存場所を確認することができる。
新規スクリプト作成
hoge
という名称のスクリプトを作成する場合はclasp create --title hoge
を実行する。
実行後、作成するスクリプトの種類を聞かれるので適当なものを選択する。
c:\clasp>clasp create --title hoge
? Create which script? (Use arrow keys)
> standalone
docs
sheets
slides
forms
webapp
api
今回は「standalone」を選択する。
作成に成功するとURLが表示されるので、ブラウザで開くかclasp open
コマンドを実行する。
c:\clasp>clasp create --title hoge
? Create which script? standalone
Created new standalone script: https://script.google.com/d/1xxx-lHcpXXXXKHzrGXXXXKVgfXXXXfKuPXXXXiey2XXXXgMLuXXXXHQU/edit
Warning: files in subfolder are not accounted for unless you set a '.claspignore' file.
Cloned 1 file.
└─ appsscript.json
GoogleDrive の中を見てみると、hoge というスクリプトが作成されていることが分かる。
スクリプトを開いてみると、myFunction関数が記述されたCode.gs
が作られていることが分かる。
スクリプトのPull
clasp pull
コマンドを実行することでCode.gs
ファイルをローカルに取ってくることができる。
※pullを行うと、拡張子が.gs
から.js
に書き換えられる。
c:\clasp>clasp pull
Warning: files in subfolder are not accounted for unless you set a '.claspignore' file.
Cloned 2 files.
└─ Code.js
└─ appsscript.json
スクリプトを修正
エディタでCode.js
ファイルを開いて編集を行う。
function myFunction() {
console.log('Hello, GAS!'); // 追加した
}
スクリプトのPush
c:\clasp>clasp push
└─ Code.js
└─ appsscript.json
Pushed 2 files.
以上で終了です。
【おまけ】.claspignoreについて
clasp push
した際にpush対象から除外したいファイルは、.claspignore
を配置してその中に記述するようにするようにします。
※ちょうど、.gitignore
のような感じ。
なお、.claspignore
を配置しない場合はデフォルトのパターンセットが適用されるらしく、
GASではない.txt
ファイルなどは予めpushされないようになっているようです。
ただし、ネット上の記事を読んでいると、このデフォルトのパターンセットはclaspバージョンアップに伴い変更されるようなので、
バージョンアップされた契機で公式ページのガイドを確認されることをお勧めします。
※というか、きちんと.gitignore
を書きましょうという話。