如何在客户端创建和推送新文件?

How do I create and push new files client side?

只是在目录中创建文件不会将它们添加到项目中。有没有办法确保它们与项目的其余部分一起被推送,或者我注定要在网络编辑器中创建它们然后拉动?

.claspignore 文件未排除的目录中的任何 .js 或 .html 文件将被推送到关联的 Apps 脚本项目。 您可以使用 clasp status 查看这些文件。

Official Description:

Push
Force writes all local files to script.google.com.

Ignores files:

  • That start with a .
  • That don't have an accepted file extension
  • That are ignored (filename matches a glob pattern in the .claspignore file)

例如

$ clasp create
 ...
$ echo 'function foo() { console.log("This is a Stackdriver log"); }' > newFile.js
$ clasp status
Not ignored files:
└─ appsscript.json
└─ newFile.js

Ignored files:
└─ .clasp.json
$ clasp push
└─ appsscript.json
└─ newFile.js
Pushed 2 files.
$ clasp open
Opening script: https://script.google.com/d/..../edit

在脚本编辑器中,您将观察到 clasp push 推送的文件。如果您立即执行 clasp pull,您将不会观察到文件中的差异(好吧,也许 LF/CRLF 转换除外)。

如果是这样,解决方法是在打开编辑器之前再次推送。

$ clasp push && clasp push
  ...
$ clasp open