VS Code远程开发——现代机器人开发的主流IDE方案 面试翻车现场有个候选人来面试简历上写着熟练使用VS Code进行开发。我问他你的机器人跑在Ubuntu上但你想用Windows上的VS Code开发怎么搞他说把代码拷到Windows上写写完再拷回去。我问那调试呢他沉默了。这都2024年了还在用U盘拷代码的方式做机器人开发VS Code的远程开发功能早就把这个问题解决了。今天我们就来聊聊这个话题。Remote DevelopmentVS Code的杀手级功能VS Code本身是个轻量级编辑器但微软给它加了一个超能力——Remote Development。通过一组扩展你可以让本地VS Code的界面连接远端机器上的代码和工具体验和本地开发几乎一模一样。三种远程模式Remote - SSH通过SSH连接远程Linux机器。这是机器人开发最常用的方式你的机器人跑着Ubuntu你在笔记本上用VS Code写代码代码实际存储在机器人上编译也在机器人上执行。Remote - WSLWindows用户可以在WSLWindows Subsystem for Linux里开发。代码存在WSL的文件系统中Windows上的VS Code直接访问。Dev Containers在Docker容器里开发。整个开发环境打包在容器里团队成员打开就是同样的环境再也不用在我电脑上能跑。Remote - SSH实战这是机器人开发最常用的模式。配置步骤第一步安装扩展在VS Code扩展市场搜索Remote - SSH安装微软官方的那个。第二步配置SSH按CtrlShiftP输入Remote-SSH: Connect to Host输入连接命令ssh user192.168.1.100第一次连接会要求在远端安装VS Code Server等它自动装好就行。第三步打开工作区连接成功后点Open Folder选择机器人上的项目目录比如/home/robot/catkin_ws/src。VS Code会在远端安装必要的扩展后端然后你就可以像本地一样编辑代码了。SSH配置文件经常连接同一台机器人配置~/.ssh/configHost myrobot HostName 192.168.1.100 User robot Port 22 IdentityFile ~/.ssh/id_rsa ServerAliveInterval 60配置后直接ssh myrobot就能连接VS Code里也能直接选myrobot作为远程主机。ServerAliveInterval防止连接断开这个很重要——谁也不想写了两小时代码突然断连。远程开发中的终端和调试连接远程后VS Code的终端也是运行在远程机器上的。点Terminal New Terminal打开的就是机器人上的bash。你可以在这里编译、运行ROS2节点、查看日志一切都在远程执行。调试也是远程的。配置launch.json{ version: 0.2.0, configurations: [ { name: C Launch, type: cppdbg, request: launch, program: ${workspaceFolder}/devel/lib/my_package/my_node, args: [], stopAtEntry: false, cwd: ${workspaceFolder}, environment: [], MIMode: gdb, setupCommands: [ {text: -enable-pretty-printing} ] } ] }按F5启动调试GDB在远程运行断点、单步、变量查看都在本地VS Code界面操作。这个体验非常流畅用过就回不去了。Dev Containers环境一致性机器人项目的环境配置是出了名的复杂——ROS版本、Python版本、各种依赖库。新人入职花三天装环境是常事。Dev Containers可以解决这个问题。在项目根目录创建.devcontainer/devcontainer.json{ name: Robot Dev Environment, image: osrf/ros:humble-desktop-full, workspaceFolder: /workspace, workspaceMount: source${localWorkspaceFolder},target/workspace,typebind, extensions: [ ms-vscode.cpptools, ms-python.python ], remoteUser: ros }重新打开时VS Code会提示Reopen in Container确认后就在Docker容器里开发了。环境镜像可以包含所有依赖团队成员打开就是同样的环境。推荐的扩展配置远程开发机器人项目这些扩展很有用C/Cms-vscode.cpptools代码补全、跳转定义、调试支持C开发必备。Pythonms-python.pythonPython开发必备支持Pylance智能补全。ROSms-iot.vscode-ros微软官方的ROS扩展支持package.xml补全、launch文件补全、节点监控。CMaketwxs.cmakeCMakeLists.txt语法高亮和补全。Remote Development扩展包包含SSH、WSL、Containers三个扩展。你可以把这些扩展配置在.vscode/extensions.json里团队成员打开项目时会自动推荐安装。面试常见考点远程开发的原理是什么——VS Code采用客户端-服务器架构。本地VS Code是客户端负责UI渲染远端安装VS Code Server负责文件系统操作、终端、调试等。两者通过SSH或HTTP通信。远程开发和SSHX11转发有什么区别——X11转发是把远程的图形界面传到本地延迟高、体验差。VS Code Remote是在远端执行所有计算本地只负责UI渲染带宽占用小体验流畅。Dev Containers的优势是什么——环境一致性、可复现性、隔离性。新人不需要手动装环境打开项目就在正确的环境里。不同项目可以用不同的容器互不干扰。远程开发的网络要求VS Code Remote-SSH对网络质量有一定要求。如果连接经常断开可以检查几个方面一是SSH配置中的ServerAliveInterval参数设置为60可以保持连接活跃二是网络延迟高延迟下体验会很差这时候可以考虑用VS Code的Tunnel模式三是服务器性能如果CPU或内存不足扩展宿主进程可能会崩溃。在机器人项目中通常是在性能较强的工作站上开发然后SSH到机器人上调试。补充一点Remote-SSH的配置文件~/.ssh/config可以预设连接参数比如用户名、端口、密钥路径等这样连接时只需要写ssh hostname就够了。给你的建议如果你还在用本地写代码、scp传到机器人、SSH上去编译运行的工作流是时候升级了。VS Code Remote - SSH可以让你的开发效率提升一个档次。配置一次SSH config以后连接就是一点击的事。把launch.json配好调试也不用手动gdb了。团队共享devcontainer配置新人入职环境配置时间从三天缩短到三分钟。当然VS Code不是唯一选择。如果你更喜欢轻量级方案Vimtmux也很棒。但不可否认VS Code Remote已经成为机器人开发的主流IDE方案面试中提一下能加分。如果遇到远程连接不稳定的情况可以在SSH配置中加上ServerAliveInterval 60和ServerAliveCountMax 3来保持连接活跃避免长时间无操作后断连。上一篇第87篇 Vim进阶——多文件编辑、宏录制和效率提升技巧下一篇预告第89篇 Shell脚本入门——自动化测试和环境配置的起点

相关新闻

最新新闻

“一个公司最后可能只剩两个人”——蒋涛、吴甘沙、徐欣、张帆圆桌激辩:AI 如何重构产品、组织与商业

“一个公司最后可能只剩两个人”——蒋涛、吴甘沙、徐欣、张帆圆桌激辩:AI 如何重构产品、组织与商业

作者 | 唐小引 出品 | CSDN(ID:CSDNnews)Claude Code,12 个人,九个月,25 亿美金营收。同一赛道里,微软 VS Code 几千人团队,JetBrains 两千人。 这不是一个融资新闻,这是一个信号。当…

2026/7/23 22:10:46
修复产品口碑之选:这些品牌让你的肌肤焕然一新

修复产品口碑之选:这些品牌让你的肌肤焕然一新

做美业这五年,我见过太多被“修复”两个字折腾得够呛的姐妹。不是产品不好用,而是压根没搞懂自己到底需要什么修复。很多美容院老板,也不知道选什么品牌的产品,才能根治顾客的问题。行业深度观察:修复这件事&#xff0…

2026/7/23 22:10:46
从“人等硬件”到“结果自来”:揭秘汽车软件SIL测试的正确打开方式

从“人等硬件”到“结果自来”:揭秘汽车软件SIL测试的正确打开方式

“一周连发好几版软件,测试速度赶不上发布节奏,回归测试任务堆成山!”“软件代码越来越庞杂,硬件黑盒测试摸不清问题原因,问题定位让人头大!”“同时维护几十款车型测试,测试硬件资源需求各不相…

2026/7/23 22:10:46
2026 百元性价比蓝牙耳机实测|百元蓝牙耳机选购指南与机型推荐

2026 百元性价比蓝牙耳机实测|百元蓝牙耳机选购指南与机型推荐

前言预算控制在百元区间挑选蓝牙耳机,是学生党、通勤上班族最普遍的需求。市面上百元价位 TWS 耳机数量庞大,大量产品存在降噪参数虚标、蓝牙连接不稳、佩戴压耳、续航严重缩水等问题。很多用户搜索百元性价比蓝牙耳机推荐,希望找到实测靠谱、…

2026/7/23 22:10:46
不诈骗经济学:不栓绳的狗都是流浪狗

不诈骗经济学:不栓绳的狗都是流浪狗

你觉得有危险,就要防卫。

2026/7/23 22:10:46
从“刷卡拥堵”到“秒级通行”:一张RFID电子校徽如何让校园管理有迹可循?

从“刷卡拥堵”到“秒级通行”:一张RFID电子校徽如何让校园管理有迹可循?

清晨7点30分,这往往是绝大多数中小学校园乃至高校一天中最繁忙的时刻。成百上千名学生如潮水般涌向校门,在传统的闸机前排起长龙。“滴——”伴随着一声声清脆却略显焦躁的刷卡声,学生们有的在翻找书包里的饭卡或学生证,有的因为卡…

2026/7/23 22:05:46

月新闻