VSC Remote SSH:如何将修改同步保存至远程与本地磁盘?
实现VS Remote SSH本地与远程双向同步保存的方法
以下是几种可行的解决方案,无需依赖VS Code未公开的隐藏设置:
方案1:基于Git版本控制同步(推荐)
这是最规范且稳定的同步方式,同时能保留修改历史:
- 在树莓派的代码目录初始化Git仓库:
git init && git add . && git commit -m "initial commit" - 在本地机器克隆树莓派上的仓库:
git clone pi@<树莓派IP>:/path/to/remote/code/ - 开发时可灵活选择:
- 直接在本地VS Code修改代码,提交后推送到树莓派仓库:
git push origin main - 通过Remote SSH连接树莓派修改代码,提交后在本地拉取更新:
git pull origin main
两种方式都能确保本地与远程代码实时一致。
- 直接在本地VS Code修改代码,提交后推送到树莓派仓库:
方案2:使用VS Code扩展自动同步
借助第三方扩展实现保存时双向同步:
- 在VS Code中安装
Remote Sync扩展 - 打开扩展设置,配置核心参数:
localPath:本地代码根目录的绝对路径remotePath:树莓派上代码目录的绝对路径remoteHost/remoteUser/remotePort:树莓派的SSH连接信息- 开启
autoSync并设置触发条件为onSave
- 配置完成后,无论在Remote SSH环境还是本地修改保存文件,扩展都会自动同步到另一端。
方案3:文件系统级实时同步(适合非Git场景)
用系统工具实现跨设备文件实时同步:
- 确保本地和树莓派都安装了
rsync:树莓派执行sudo apt install rsync,本地根据系统安装(Windows可使用WSL或cwRsync) - 编写双向同步脚本:
# 本地同步到远程 rsync -avz --exclude='.git/' --exclude='.vscode/' /local/code/path/ pi@<树莓派IP>:/remote/code/path/ # 远程同步到本地 rsync -avz --exclude='.git/' --exclude='.vscode/' pi@<树莓派IP>:/remote/code/path/ /local/code/path/ - 在VS Code中配置保存触发的同步任务:
- 按
Ctrl+Shift+B打开任务面板,选择「创建tasks.json文件」 - 自定义任务,添加执行上述rsync脚本的命令,并设置
runOptions为{ "runOn": "save" }
- 按
内容的提问来源于stack exchange,提问作者Lord Elrond
相关产品推荐
相关产品推荐

