upload创建一个新应用,并分配新的 ID。commit把文件发送到一个已存在的应用,并保留它的 ID、域名和设置。zip在本地生成同样的 zip 但不发送,方便你检查其中包含哪些内容。
upload 和 commit 也可以在 squarecloud app 下使用(squarecloud app upload、squarecloud app commit)。第一次使用?请从快速开始入手。
zip 中包含哪些内容
upload、commit 和 zip 会压缩当前文件夹,并排除项目根目录下 squarecloud.ignore 中列出的内容。该文件使用 .gitignore 语法,VS Code 扩展读取的也是同一个文件。
- 始终最先排除:
node_modules、.git、.github、.vscode、package-lock.json、pnpm-lock.yaml和yarn.lock。依赖会在平台上根据你的清单文件安装。如果你需要固定版本而要发送锁文件,请添加一条!规则,例如!package-lock.json。 - 链接: 指向文件的符号链接会作为该文件打包;指向文件夹的链接和失效的链接会被跳过,并在 stderr 上给出说明。
- 旧的文件名(
.squareignore、.squarecloudignore、square.ignore)在缺少squarecloud.ignore时仍会被读取,同时会提示你重命名该文件。
squarecloud upload
用法
squarecloud.app 或 squarecloud.config 文件。
输出
ID=<appID> 写入当前文件夹的配置文件,让后续命令知道你指的是哪个应用。参见应用 ID 保存在哪里。
使用 --json 时,stdout 只输出所创建应用的 JSON(ID、名称、描述、域名、集群、内存、CPU 和语言);进度消息输出到 stderr。
squarecloud commit
用法
squarecloud push、squarecloud app commit、squarecloud app push
压缩当前文件夹并发送到一个已有的应用。ID 来自参数,或来自配置文件中的 ID= 行。与其他命令不同,commit 从不打开选择器:两者都没有时,它会以退出码 1 停止。
输出
commit 没有 JSON 输出。
squarecloud zip
用法
upload 和 commit 相同的方式压缩当前文件夹,并在该文件夹内保存为 <folder name>.zip,同名的现有文件会被替换。此命令不需要登录。
输出
Couldn't zip your application. 及原因;如果无法删除旧的 <folder name>.zip,它也会说明。这两种情况都会以退出码 1 退出。
相关内容
如果想在每次推送时自动部署,请参阅 GitHub 部署。

