多端接入与切换约定¶
适用范围¶
用于国内云开发主机已经初始化完成后的日常使用,解决多台本地电脑接入同一工作区时的切换与同步问题。
基本约定¶
- 国内云主机是唯一长期活跃工作区。
- 本地电脑是接入端,不是第二主工作区。
- GitHub 同步正式提交,不负责同步未提交状态。
- 不想正式提交,不等于不落盘;需要保留时用远程工作区或
wip/*分支。
SSH 接入¶
建议在本地电脑的 ~/.ssh/config 添加:
Host dev-control
HostName <server-ip-or-domain>
User <dev-user>
Port 22
ServerAliveInterval 30
ServerAliveCountMax 3
TCPKeepAlive yes
之后直接使用:
ssh dev-control
如需浏览器联调,使用端口转发:
ssh -L 3000:127.0.0.1:3000 dev-control
IDE 接入¶
- IDE 统一连接到远程目录
/srv/workspace/<project-name>。 - 不建议在本地电脑再保留一个长期同步中的完整副本。
- 需要本地临时调试时,可以临时克隆,用完即删。
日常工作方式¶
开始工作:
- 连接
dev-control - 进入目标项目目录
git status确认现场- 继续当前任务或切分支
结束工作:
git status检查变更- 决定是保留在远程工作区,还是落到
wip/* - 如有运行中的开发服务,确认是否继续保留
跨设备切换¶
允许直接切设备的情况:
- 改动仍保留在远程工作区
- 另一台设备只是接入同一远程目录
- 当前现场清晰,不会误判正在修改的文件
切设备前建议至少做到以下之一:
- 写清当前状态到项目
README、TODO或临时笔记 - 提交到
wip/<topic> - 保证
git status一眼能看懂
不建议这样切换:
- A 电脑本地改了一半未提交
- B 电脑再开本地另一份副本继续改
- 之后再试图靠记忆合并
wip 分支约定¶
用于这些场景:
- 当前改动想落盘,但不想进入正式历史
- 需要跨天中断
- 需要从电脑 A 切到电脑 B
- 需要让 AI 工具基于当前现场继续工作
建议格式:
wip/<project>-<topic>
示例:
wip/autopcr-login-refactor
wip/pcrdb-schema-cleanup
本地临时副本¶
只在以下场景允许:
- 需要本地浏览器、桌面程序或系统能力联调
- 网络不稳定,短时间无法远程开发
- 需要做不适合放在云主机上的重资源调试
要求:
- 只作为临时副本
- 不作为长期活跃主工作区
- 回到远程主工作区后及时清理
常用检查¶
进入远程工作区后优先检查:
pwd
git status
git branch --show-current
git remote -v
切换设备前优先检查:
git status
git diff --stat
最小原则¶
- 活跃状态只放一处
- 未提交状态不跨本地电脑漂移
- 正式同步靠 Git,临时现场靠远程工作区或
wip/*