$ npm i -g google-apps-script
- Add -f to force reauthentication
- Add -s to show the authentication url instead of opening a webbrowser
$ gas auth [-f][-s]
$ gas init <projectName>
$ gas clone <projectName|projectId>
- There is an optional filter on projectName
$ gas list [filter]
- Gas also supports shared scripts and Team Drives
- Files in subfolders are mapped to their relative pathname in a project and the other way around
- You can specify to pull or push a single file by adding a filename to the command
- Delete a single remote file by adding -d to the push command
$ gas pull [fileName]
$ gas push [fileName] [-d]
- Create will always happen in the root of My Drive (for now)
$ gas create <projectName>
$ gas delete <projectName|projectId>
$ gas rename <projectName|projectId> <newProjectName>
- See the last example for some context
$ gas link <projectName|projectId>
$ gas open [projectName|projectId]
$ gas show [projectName|projectId]
$ gas status
Configure gas to use .gs as local extension or to use a custom Google OAuth2 client to do the API requests
- How to setup a a custom Google OAuth2 client for gas, from A to Z
- Add -e to export your current config to configFile.json
- Add -i to import a config from configFile.json
- Add -r to reset the config to the default values
$ gas config [-e][-i][-r] [configFile.json]
$ gas init myScript
$ cd myScript
$ gas open
$ gas list
$ gas clone myScript
$ gas create myScript2
$ mkdir src
$ cd src
$ gas link myScript2
$ gas info
$ gas pull
Gas creates some extra files in a .gas folder of which only 'ID' should be checked into git, so a .gitignore file gets added to your project if there isn't one present yet.
That's all (so far).
Suggestions or questions?
Tweet me @MaartenDesnouck or create an issue on github.