
你要改服务器上的一行代码。
ssh连上去,vim打开文件,找到第328行,改了,保存。
如果你熟悉vim,整个过程十秒钟。如果你不熟悉,你可能正在经历这些:按i进入编辑模式,改完按Esc,然后:wq,有时候不小心按成:q,退不出去了。再按一下,还是不行。最后只能关掉终端重来。
或者你更聪明一点:用sftp把文件下载到本地,改完再传回去。来回切换,效率也高不到哪去。
有没有一种办法,在本地用VS Code打开远程服务器的代码,像编辑本地文件一样,改完直接保存?
有。VS Code Remote SSH。
先看一个场景
一个朋友之前维护一个PHP项目,代码在远端服务器上。他每天的工作流程是这样的:
- 用WinSCP把要改的文件下载到本地
- 用本地编辑器改完
- 用WinSCP传回去
- 刷新网页看效果
- 发现有bug,回到第1步
一天下来,大部分时间花在文件传输和窗口切换上。
后来我让他装上VS Code Remote SSH。他连上服务器,直接在VS Code里打开项目文件夹,改完保存,刷新浏览器。没有下载,没有上传,没有窗口切换。
他说:“我以前怎么不知道有这个?”
VS Code Remote SSH 是什么?
VS Code是微软出品的代码编辑器,这几年已经是开发者标配了。Remote SSH是VS Code官方的一个扩展。它的作用是:通过SSH连接到远程服务器,然后远程服务器上的文件会显示在你本地的VS Code里。
你修改文件,按Ctrl+S保存,改动直接写进远程服务器。整个过程没有手动下载上传。
它还集成了终端。连上服务器后,VS Code下方直接打开一个终端窗口,就是服务器的终端。你不用另开Putty或者iTerm2。
如果你的代码需要调试,它支持设置断点、单步执行——虽然是远程代码,但调试体验和本地一样。
第一步:准备工作
你的本地电脑需要装VS Code。去code.visualstudio.com下载安装,免费的。
打开VS Code,点左侧的扩展图标(四个方块),搜索“Remote SSH”。第一个结果就是微软官方的,点安装。
服务器这边,需要有SSH服务,通常都有。确保你能用SSH连上。如果之前配过密钥登录,后面会更方便。
第二步:连接服务器
VS Code左下角有一个绿色图标,点它。菜单里选“Connect to Host”。
输入你的SSH连接命令,比如root@123.123.123.123。回车。
如果用的是密码登录,会弹窗让你输密码。如果配了密钥,自动就过去了。
VS Code会在新窗口里连接。第一次连接时,它会在服务器上安装一个小服务,后面就快了。等右下角状态栏显示“SSH: 主机名”,说明连上了。
第三步:打开远程文件夹
连上之后,VS Code里还没有文件。你需要打开服务器上的文件夹。
点左侧“资源管理器”图标(文件图标),点“打开文件夹”。
选一个目录,比如/var/www/html。确定。
VS Code会读取远程目录结构,显示在左边。现在你可以像操作本地文件一样操作远程文件了。点开一个文件,编辑,保存,改动直接落到服务器上。
试试新建一个文件、删除一个文件,都直接操作服务器上的真实文件。
第四步:使用终端
VS Code下面有一个“终端”面板。点开它。
你会看到root@主机名的提示符。这就是服务器的终端。你可以在这里敲ls、cd、systemctl restart nginx——和在SSH里一模一样。
有了这个,你不需要切到别的窗口去执行命令。编辑器旁边就是命令行,效率高很多。
第五步:调试远程代码
如果你用的是PHP、Python、Node.js这类语言,VS Code支持远程调试。
以PHP为例:
- 在服务器上安装Xdebug扩展
- 在VS Code里装PHP Debug扩展
- 配置
launch.json,把pathMappings指向远程路径 - 打上断点,按F5启动调试
浏览器访问你的网站,VS Code会在断点处停下,你可以看变量值、单步执行。虽然代码在服务器上跑,但调试体验和本地一模一样。
VS Code vs 传统方式
| 对比项 | vim/sftp | VS Code Remote SSH |
|---|---|---|
| 学习成本 | vim有门槛 | VS Code通用,零学习成本 |
| 编辑体验 | 命令行全键盘 | 图形化,鼠标+快捷键 |
| 文件操作 | 手动下载上传 | 直接编辑,保存即同步 |
| 代码提示 | 基本没有 | 完整智能提示(部分语言需远程装插件) |
| 调试 | 加日志print | 断点调试 |
| 终端 | 另开窗口 | 集成在面板里 |
Remote SSH不是要替代vim。vim在某些场景下仍然无可替代(比如紧急修服务器,或者你只有手机)。但在日常开发、调试代码的场景里,Remote SSH的效率优势非常明显。
常见问题与避坑
1. 第一次连接很慢
正常。VS Code要在服务器上下载一个小服务。只有第一次会这样,后面就快了。
2. 有些本地插件不能用
部分插件需要安装在远程服务器上。连上之后,在扩展面板里,有些插件会显示“在SSH:主机名中安装”。点一下就行了。
3. 连接断开怎么办
网络波动导致断开后,VS Code会自动重连。正在编辑的文件会保持打开状态,不太丢进度。
4. 修改系统文件没权限
用普通用户连的,有些文件写不了。可以用sudo,或者在/etc/ssh/sshd_config里开root登录(注意安全风险)。
5. Windows系统有额外要求
Windows上需要安装OpenSSH(Win10/11自带)。如果没有,在“设置→应用→可选功能”里添加。
一个真实案例
有个小创业团队,代码跑在阿里云的ECS上。以前每个人都在服务器上用vim改代码,经常出现两个人同时改一个文件、互相覆盖的情况。改完之后忘了保存、或者git pull之前先改了,各种问题。
后来全员换VS Code Remote SSH。每个人连自己的开发分支目录,代码实时同步。配合Git做版本管理,再也没有“谁把我代码覆盖了”的吵架。
更重要的是,新人入职不用花两周学vim了。装上VS Code,配好Remote SSH,当天就能上手改代码。
最后一句
工具是为了解决问题,不是为了增加学习成本。
vim很好,但如果你不是重度运维、不需要天天在服务器上敲命令,Remote SSH就是更好的选择。
花10分钟配好它,以后每次改服务器代码,都不用再挣扎于vim的三种模式。
你的开发体验提升的不只是一点点。




