目前,我有两台计算机,一台在公司中使用Ubuntu,一台在家里使用Mac OS。有时我想在家中工作,同时访问公司中的Ubuntu计算机。我可以使用ssh进入Ubuntu机器并在那里进行导航和编译。但是,当我实际上要编辑一些cpp源代码时,我意识到实际上是在Ubuntu计算机中打开了编辑器(VS代码),因此无法从Mac查看它。如果要通过VS代码在Mac上远程编辑文件,该怎么办?
尽管许多答案都提到使用版本控制工具(如git),但在我的特定情况下可能很难使用。问题是我公司的构建环境是Linux,所以我拥有的大多数构建工具只能在Linux上运行。这意味着我只能在Linux中编译源代码。如果使用git,则每次我要编译和调试代码时,都必须使用Mac进行提交和推送,然后在Linux上进行测试。如果要逐步修改,测试和调试我的代码,这可能会很耗时。
答案 0 :(得分:0)
使用某种版本控制系统,例如git。然后,您可以在家里进行编辑和编译(前提是您的代码可在Linux和MacOSX之间移植,例如,因为它符合POSIX)。
您可以在Mac上安装一些X11服务器,然后使用ssh -X
访问远程Ubuntu计算机(然后远程运行GUI或编辑器,例如ssh -X remotelinuxhost.company.com emacs
)。但是,这要求家用计算机与远程计算机之间具有良好的带宽和延迟。
顺便说一句,您可以使用其他source code editor,例如emacs(可以进行remote编辑)或vim。
由于Linux和MacOSX都是POSIX系统,因此通常(但不总是)很容易将源代码从Linux移植到MacOSX并编写可在两个系统上编译的源代码。顺便说一句,许多Linux框架(例如Qt,GTK,POCO,Boost等)和构建系统都可以使用并移植到MacOSX。某些Linux系统调用(列在syscalls(2)中)在MacOSX上不可用(例如signalfd(2) ...)
当然,您可以在Apple笔记本电脑上安装Linux(也许在某些VM中)。