如何使用clasp部署Google Apps Script Web应用及解决部署不生效问题
clasp指定部署ID执行部署后未生效解决方案
核心前提说明
clasp deploy --deploymentId <id> 命令的作用是更新对应ID的已有部署,而非使用该ID创建新部署。如果你的需求是生成全新部署,不需要加--deploymentId参数,直接执行clasp deploy即可。
现有部署更新不生效的排查步骤
- 先升级clasp到最新版本,低版本存在部署静默失败的已知bug:
执行clasp -v查看本地版本,若版本低于2.4.2,运行npm update -g @google/clasp升级 - 核对本地配置的脚本ID是否正确:
打开项目根目录的clasp.json文件,确认scriptId字段值和你要操作的Google Apps Script脚本ID完全一致,避免多项目切换时配置未更新导致部署到其他脚本 - 核对部署ID有效性:
执行clasp deployments列出当前脚本的所有部署记录,确认你使用的deploymentId存在于返回的列表中 - 强制触发部署更新:
执行带描述参数的部署命令强制绑定新版本:clasp deploy --deploymentId <你的目标部署ID> --description "强制版本更新"
执行完成后再次运行clasp deployments,确认对应部署ID绑定的版本号已经更新为最新生成的版本 - 清除Web应用缓存:
若你部署的是Web应用,浏览器默认会缓存旧版应用代码,部署完成后打开无痕窗口访问Web应用URL,或者清除当前站点缓存后再验证是否更新
特殊场景排查
如果是绑定Google Sheets的容器脚本,出现静默部署失败大概率是权限问题,执行clasp login --creds <你的服务账号凭据文件路径>重新授权对应账号的编辑权限,再重新执行部署操作即可。
内容的提问来源于stack exchange,提问作者Juuso Nykänen
相关产品推荐
相关产品推荐

