Sublime Text如何自动上传保存的文件_Sublime自动上传保存文件方案

冬婷君_8489

冬婷君_8489

2026-04-04

726人浏览

原创

sftp插件通过监听save事件实现保存即上传,需正确安装、配置sftp-config.json并启用"upload_on_save":true;常见失败原因包括host格式错误、ssh密钥未配置、remote_path目录不存在或无写权限、ignore_regexes误过滤文件等。

sublime text如何自动上传保存的文件_sublime自动上传保存文件方案

用 SFTP 插件实现保存即上传

Sublime Text 原生不支持 FTP/SFTP 自动上传,必须依赖 SFTP 插件。它不是“后台同步服务”,而是监听本地 save 事件后,立即执行一次上传——所以你按 Ctrl+S 或触发 save_on_focus_lost,文件才会发到服务器。

安装和配置的关键点:

  • 必须通过 Package Control: Install Package 安装 SFTP(不是 FTPSync 或其他名字相近的插件)
  • 配置文件路径是 sftp-config.json,且必须放在项目根目录或 Packages/User/ 下对应位置,不能随便命名或放错层级
  • "upload_on_save": true 是开关,缺了这行就不会上传;设为 false 或漏写引号都会静默失效
  • 如果项目含中文路径或空格,remote_path 建议用正斜杠 /,避免 Windows 风格反斜杠 \ 导致路径解析失败

为什么改了文件却没上传?常见卡点

上传失败往往不是插件问题,而是连接或权限链路上某个环节断了。最常踩的坑集中在以下几处:

  • host 写成 http://xxx.com 或带端口如 xxx.com:22 —— 正确写法只是 "host": "xxx.com",端口走单独的 "port": 22 字段
  • user 和 password 明文写在配置里,但服务器实际用的是 SSH 密钥登录;此时应删掉 password,加上 "private_key": "/path/to/id_rsa"
  • remote_path 指向的目录在服务器上不存在,或当前用户无写权限;上传会静默失败,需打开 Tools → SFTP → Show Output 查看具体报错,比如 Permission denied (publickey) 或 No such file
  • 配置里写了 "ignore_regexes" 却误加了 .js 或 .html,结果连主文件都被过滤掉,上传列表为空

save_on_focus_lost 和 upload_on_save 能一起用吗?

能,而且推荐一起用。因为 save_on_focus_lost 是原生保存机制,它确保你切出窗口时文件已落盘;而 upload_on_save 是 SFTP 插件对「保存完成」事件的响应——只要文件真实写入磁盘,上传就会触发。

Detect GPT
Detect GPT

Detect GPT是一款用于浏览网页时识别 AI 生成内容的 Chrome 扩展和文本检测工具。

下载

但要注意两个前提:

  • save_on_focus_lost 必须设为 true,否则手动不按 Ctrl+S 就不会触发上传
  • 不要同时启用 AutoSave 插件的 auto_save_on_idle,否则可能在你打字中途就上传未完成的草稿,尤其对模板文件或正在重写的 JS 逻辑很危险
  • 大文件(>5MB)上传期间 UI 会卡顿,建议在 ignore_regexes 中排除日志、打包产物等非源码文件,例如 "*.log", "*.min.js"

上传失败时怎么快速验证和回退?

别直接改配置硬试。先做三步最小验证:

  • 右键当前文件 → SFTP: Upload File,看是否弹出成功提示;失败则说明连接或路径问题,跟自动逻辑无关
  • 临时把 "upload_on_save": false 改成 true,再保存一次,确认是配置加载问题还是运行时问题
  • 在终端手动跑一遍 sftp -o Port=22 user@host,验证基础 SSH 连通性和权限,绕过插件层

真正麻烦的是混合使用 Git 和 SFTP 的场景:你 push 了代码,但服务器上文件还是旧的——这时候大概率是 remote_path 指向了错误的部署目录,或者你忘了 upload_on_save 只作用于当前打开的文件,不会递归同步整个项目。

相关文章

PHP速学视频免费教程(入门到精通)
PHP速学视频免费教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载

相关标签:

sublime

本站声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

相关专题

更多
json数据格式
json数据格式

JSON是一种轻量级的数据交换格式。本专题为大家带来json数据格式相关文章,帮助大家解决问题。

2023.08.07

1975

5

json是什么
json是什么

JSON是一种轻量级的数据交换格式,具有简洁、易读、跨平台和语言的特点,JSON数据是通过键值对的方式进行组织,其中键是字符串,值可以是字符串、数值、布尔值、数组、对象或者null,在Web开发、数据交换和配置文件等方面得到广泛应用。本专题为大家提供json相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.23

2702

1

jquery怎么操作json
jquery怎么操作json

操作的方法有:1、“$.parseJSON(jsonString)”2、“$.getJSON(url, data, success)”;3、“$.each(obj, callback)”;4、“$.ajax()”。更多jquery怎么操作json的详细内容,可以访问本专题下面的文章。

2023.10.13

936

3

go语言处理json数据方法
go语言处理json数据方法

本专题整合了go语言中处理json数据方法,阅读专题下面的文章了解更多详细内容。

2025.09.10

3019

7

js正则表达式
js正则表达式

php中文网为大家提供各种js正则表达式语法大全以及各种js正则表达式使用的方法,还有更多js正则表达式的相关文章、相关下载、相关课程,供大家免费下载体验。

2023.06.20

3836

8

js获取当前时间
js获取当前时间

JS全称JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言;它是一种属于网络的高级脚本语言,主要用于Web,常用来为网页添加各式各样的动态功能。js怎么获取当前时间呢?php中文网给大家带来了相关的教程以及文章,欢迎大家前来学习阅读。

2023.07.28

1215

5

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

2023.08.03

1558

5

js是什么意思
js是什么意思

JS是JavaScript的缩写,它是一种广泛应用于网页开发的脚本语言。JavaScript是一种解释性的、基于对象和事件驱动的编程语言,通常用于为网页增加交互性和动态性。它可以在网页上实现复杂的功能和效果,如表单验证、页面元素操作、动画效果、数据交互等。

2023.08.17

9303

11

js删除节点的方法
js删除节点的方法

js删除节点的方法有:1、removeChild()方法,用于从父节点中移除指定的子节点,它需要两个参数,第一个参数是要删除的子节点,第二个参数是父节点;2、parentNode.removeChild()方法,可以直接通过父节点调用来删除子节点;3、remove()方法,可以直接删除节点,而无需指定父节点;4、innerHTML属性,用于删除节点的内容。

2023.09.01

840

4

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程