sftp插件默认不显示远程隐藏文件,需在sftp-config.json根层级显式配置"show_hidden_files": true;browse server中不可见但可手动输入绝对路径下载编辑;rsub方式不受此限制。

sftp-config.json 里没配 show_hidden_files,远程隐藏文件默认不显示——这不是 Sublime 的限制,是 SFTP 插件默认过滤掉了以 . 开头的条目。
为什么 Browse Server 看不到 .env 或 .gitignore?
SFTP 插件(含 SFTP-Next)在列出远程目录时,默认跳过隐藏文件,连 .git 文件夹都不可见。这不是权限问题,也不是路径写错,而是插件主动屏蔽。它不读取服务器端的 ls -a 结果,而是走标准 SFTP 协议的 readdir,再手动过滤掉 ^\. 匹配的项。
show_hidden_files 必须显式设为 true
这个配置项必须直接写在 sftp-config.json 的根层级,不能嵌套在 files 或 sync_down_on_open 下面。且只对 Browse Server 和右键 Download/Upload 生效,不影响 upload_on_save 的行为。
-
"show_hidden_files": true是布尔值,不是字符串,别写成"true" - 必须和
host、user、remote_path并列,处于同一缩进层级 - 改完后不用重启 Sublime,但要重新打开
SFTP → Browse Server窗口才刷新列表
编辑已知路径的隐藏文件(比如 .htaccess)
即使没开启 show_hidden_files,你仍能手动打开:右键项目文件夹 → SFTP → Download File...,然后在弹出的输入框里直接敲完整路径,例如:/var/www/.htaccess。只要路径存在且有读权限,就能下载并编辑;保存后照样触发 upload_on_save 同步回去。
- 路径必须绝对、完整,不能用
~或相对写法 - 如果服务器上该文件不存在,下载会失败,但不会报错提示,只会静默关闭对话框
- 编辑后保存,上传路径仍按
remote_path+ 相对路径拼接,所以确保remote_path覆盖目标位置(如配的是"/var/www/",就不能去编辑/etc/nginx/conf.d/default.conf)
rsub 方式下隐藏文件完全不受限
用 rsub 打开远程文件时,Sublime 实际是在本地打开一个代理流,不经过 SFTP 插件的文件列表逻辑。所以 rsub ~/.bashrc 或 rsub /home/user/.vimrc 都能直接编辑,无需任何额外配置。
- 前提是远程
rsub进程有权限读取该文件(比如root文件需用sudo rsub) - 保存即写回原路径,不校验是否“隐藏”,也不走
sftp-config.json - 但注意:
rsub不提供文件浏览能力,你得知道完整路径才能打开
show_hidden_files,不代表你能编辑 /root/.ssh/authorized_keys ——那还得看 SSH 用户是否有对应路径的读写权。路径对、配置对、权限不对,照样卡在下载失败或保存无响应。











