如何使用clasp仅上传Google Apps Script中更新的文件?
解决clasp watch模式全量推送的问题
目前clasp的push --watch模式本身默认是检测到文件变化后全量上传整个项目,没有内置的增量推送单个更新文件的功能,但可以通过以下几种方式实现类似效果:
手动推送单个文件:放弃watch模式,当修改完特定文件后,直接执行指定文件的推送命令。比如修改了
home.html就运行:clasp push home.html这种方式简单直接,适合修改频率不高的场景。
用第三方监听工具触发单文件推送:借助
nodemon这类文件监听工具,配置它在特定文件变化时自动执行单文件推送命令:- 先安装nodemon:
npm install -g nodemon - 在项目根目录创建
nodemon.json,配置监听规则和执行命令(以监听html和js文件为例):{ "watch": ["*.html", "*.js"], "ext": "html,js", "exec": "clasp push {{file}}" } - 启动监听:
nodemon,之后修改单个文件时,就只会推送该文件。
- 先安装nodemon:
优化clasp配置减少推送体积:检查你的
clasp.json里的ignore字段,把不需要上传的文件(比如本地配置、日志、node_modules等)加入忽略列表,即使全量推送,也能减少上传的文件数量,加快速度。示例配置:{ "scriptId": "你的脚本ID", "rootDir": "./src", "ignore": [ ".git/**", "node_modules/**", "*.log" ] }更新clasp到最新版本:旧版本的clasp可能存在推送逻辑的问题,运行
npm install -g @google/clasp更新到最新版,说不定能改善推送效率。
内容的提问来源于stack exchange,提问作者Shiv Yadav
相关产品推荐
相关产品推荐

