首先谈谈这个需求怎么来的,为什么需要一个远程的项目开发环境。
在日常开发中,项目代码总是需要在远程服务器上编译运行,直接在服务器上用VIM编辑效率太低;而如果在本地使用编辑器、阅读器、IDEA把代码编辑好,然后通过scp等工具传到远程的服务器上编译运行,这样又需要几个窗口来回切换,非常麻烦
有没有一个工具可以将代码放在远程服务器上,在本地仅仅作为一个浏览的编辑器,所有修改可以直接同步到服务器上呢。答案是有的,这就是VScode,本篇博客就是分享下如何用VScode实现这种功能提高开发效率,以C/C++开发环境为例,展示多工程依赖关系时,采用的是DPDK和OVS(OVS的编译需要用到DPDK的库,所以DPDK相当于一个SDK,VScode可以实现在OVS代码中根据函数定义跳转到DPDK源码中)。
VScode作为微软推出一款轻量化开发工具,其本身很小,只有几十兆,然而丰富的插件使他的功能也非常强大。
首先在官网https://code.visualstudio.com/下载VScode。
双击安装完毕后,打开VScode,看到如下界面:
首先,安装SSH和C语言环境插件,直接有一个“C/C++ Extension Pack”的插件全部都包含了。安装插件:
插件安装完成后,点击左下角的绿色终端符号,选择“Connect current window to Host”,第一次使用需要配置远程服务器的IP、用户名和密码等:
远程连接完成后,在“文件”->“打开文件夹”中打开我们想要去编辑修改的项目文件夹,这时你会发现路径已经是远程服务器的文件系统了(这里是OVS的根目录):
在资源管理器中,随便打开一个文件,会发现里面有很多头文件找不到,比如说属于DPDK的头文件:
这就需要在路径中修复,点击“快速修复”,跳转如下界面:
点击左边的“C_cpp_properties.json”,进入配置文件修改,在includePath中添加DPDK的头文件、源文件目录,“**”代表递归以下子文件夹,保存:
返回刚才的源文件,可以看到找不到头文件的错误消失了,随便找一个DPDK中的函数,鼠标放上去可以显示函数的定义:
右键跳转定义,可以看到此时弹出的文件,已经是打开了DPDK根目录下的对应文件,显示了该函数的实现:
这还没完,VScode的SSH插件还指出直接打开命令行,快捷键“ctrl+`”,打开远程服务器的终端,一边改代码一边调试:
除此之外,如果怕远程连接突然断开,代码随着远程服务器一起down了,还可以利用git插件,方便地将代码同步到github上。
Now, enjoy it~