GoLand保存时自动上传需开启Automatic Upload开关,配置SSH/SFTP连接与本地-远程路径映射,并确保连接测试成功;该功能仅单向同步,不自动删除远程文件。

保存时自动上传必须开启 Automatic Upload
GoLand 的「保存即上传」行为不是默认启用的,它依赖 Deployment → Automatic Upload 这个开关。不勾选它,哪怕 SSH 或 SFTP 配置完全正确,Ctrl+S 也只会保存本地文件,不会触发任何同步。
启用路径:Settings → Tools → Deployment → Options → 勾选 Automatic upload (always)。
注意以下三点:
- 该选项只控制「上传」,不控制「下载」;远程文件修改后不会自动拉取到本地
- 勾选后,所有已映射的本地文件(在 Deployment → Mapping 中配置过的)都会被监听
- 如果项目里有大量生成文件(如
_output、bin/),建议在Excluded Paths中排除,否则会拖慢保存响应
Deployment 映射必须指向正确的远程路径
自动上传的前提是 GoLand 知道「这个本地文件该传到远程哪个位置」。这由 Deployment → Configuration → Mapping 决定。常见错误是:
- 本地路径设成了子目录(如
/project/src),但远程路径写成/home/user/project,导致文件错位 - 远程路径权限不足(比如用普通用户连接,却映射到
/var/www这类 root 才能写的目录),上传静默失败 - 没填
Web server root URL,虽不影响上传,但后续调试或运行配置可能报路径解析错误
验证方式很简单:改一行代码 → Ctrl+S → 立刻在远程服务器上 ls -l 对应路径,看文件修改时间是否更新。
SSH/SFTP 连接必须能通过“Test Connection”
很多上传失败其实卡在连接层。GoLand 不会在保存时弹出连接失败提示,而是直接跳过上传——你只能看到文件没变、日志无输出。
GoLand 2026.1.1 是 2026.1 发布后的首个维护修正版本,适合已经开始体验 2026.1 新功能并希望同步补丁的开发者。它更适合用于入门项目、现有项目迁移测试和 IDE 行为验证。
务必确认以下几点:
- 在
Deployment → Configuration → Connection页面点击Test Connection,显示Connection successful - 用户名和密码(或密钥)对远程服务器有效,且该用户对目标目录有读写权限
- 远程 SSH 服务端口(默认 22)没被防火墙拦截;若改过端口,
Port字段必须同步更新 - 如果用密钥登录,确保私钥格式为 PEM(OpenSSH 格式),且未加密;GoLand 不支持 passphrased 密钥自动解密
自动上传不删除远程文件,删本地 ≠ 删远端
这是最容易被忽略的行为边界:Automatic upload 只做单向增量同步(本地→远程),它不会感知「本地文件被删除」这件事。
如果你删了 main.go 并保存,远程的 main.go 依然存在。
要实现双向清理,必须额外勾选:Deployment → Options → Delete remote files when local are deleted。
但请谨慎开启此项——一旦误删本地文件又没及时撤回,远程副本也会立刻消失,且无回收站。

















