# This file specifies files that are *not* uploaded to Google Cloud Platform
# using gcloud. It follows the same syntax as .gitignore, with the addition of
# "#!include" directives (which insert the entries of the given .gitignore-style
# file at that point).
#
# For more information, run:
#   $ gcloud topic gcloudignore
#
.gcloudignore
.git
.gitignore

node_modules
lib
node
.packages
deploy.sh
pubspec.yaml
pubspec.lock
#!include:.gitignore
