以下文章来源于平凡而诗意,作者jackpop

—▼—
前言
兜兜转转,在开发工具方面我还是选择了 VS Code,原因非常简单 -- 远程开发。
工作之后,开发平台慢慢就开始以 Linux 为主。之所以选择 Linux,首先,是因为它在编译、操作等方面更加便捷省心。其次,是因为和后期测试、部署环境更加统一。
但是,这就遇到了一个矛盾,日常办公主要以 windows 为主,而开发只能在无桌面的服务器端进行,这样随之而来的就是开发效率和便捷性的降低。虽然一些小的项目可以使用 vim 完成,但是在大一些的工程,就会觉得处处都显得非常不顺手。而且,对于记忆 vim 繁多的快捷键一直非常排斥,可能还是习惯的问题。
因此,在我的远程开发之路上,就开始了长时间的变迁之路。
我的远程开发之路Pycharm+vim+Putty

这是我最先采用的方式,主要的编码工作是在 windows 下用 Pycharm 完成,然后用 SVN、SFTP 同步到远程服务器,然后使用 Putty 结合 vim 做一些小规模的开发,然后进行调试,打包、测试。虽然现在看起来会非常繁琐,但是在当时眼界被局限的时候,认为这就是本应该有的远程开发形式,所以,延续的很久。
MobaXterm

后来,我遇到了 MobaXterm,使用几个月之后我很惊叹,为什么有这么强大的工具?
Mobaxterm 相对于 Putty 是一款功能非常丰富的增强型终端模拟工具,更重要的是它集成了 xming,能够自动把远程服务器下的窗口投影到本地,这样的话我们就可以轻松打开带有 UI 的客户端。
因此,这时候我开始在远程服务器上配置 Pycharm 和 Python 开发环境,然后使用 MobaXterm 打开 Pycharm 客户端进行开发。
就这样又延续了几个月,我认为,也许这就是远程开发最完美的解决方案。
xshell+xming

再后来,我尝试了一下 xshell,然后就再也回不去了。经过对比之后逐渐凸显出 MobaXterm 的缺点,也让 xshell 的优点显得更加突出,
丰富而简单的主题配置强大的快捷键反应迅速灵敏支持丰富的定制化功能但是,随之而来也遇到了一个问题。一直喜欢的有界面的 Pycharm 不能用了,xshell 自家的 Xmanger 收费。只能自己安装 xming,设置转发隧道,用 xming 显示 Pycharm 客户端。
这时候,我觉得也许我可以在探索远程开发的道路上停下脚步了,但是,这时候我却遇到了 vs code。
VS Code 远程开发最近两年 vs code 在开发工具领域表现得非常抢眼,让很多原本热衷于 eclipse、IntelliJ、Atom 的同学纷纷转向了 vs code,并且对其赞不绝口。一直以来,我认为 vs code 名不副实,它只不过是一个并没有什么特色之处,依靠插件而使其丰富起来的编辑器而已。因此,虽然我会安装 vs code,但是使用频率缺少的可怜。
直到今年 5 月份微软在 PyCon 2019 大会上发布了 VS Code Remote 之后,我才发现它对我太具有诱惑力了。
我不愿意为了一点优势而舍弃 Pycharm 强大的自动补全和代码调试功能,但是,我愿意为了便捷的远程开发去学着改掉自己的使用习惯,去适应一款新的开发工具。当然,前提是这款工具真的能够惊艳到我的情况下,这一点 vs code 做到了,它在远程开发方面的确让我惊艳了一把。
为什么选择 vs code?
远程开发对于开发工具并不算是一个新鲜的事情,其中在我们熟知的 InteliJ 家族的开发工具里就已经实现了远程开发功能。但是,为什么只有 vs code 吸引到我了?
对比一下 IntelliJ 和 vs code 的远程开发就一目了然。
IntelliJ 远程开发只有专业版才有,而社区版没有这项功能。而 vs code 免费即可使用远程开发功能。IntelliJ 的远程开发时通过 FTP、SFTP (File Transfer Protocol,文件传输协议) 实现,它们的远程开发的原理是通过文件传输协议连接到远程服务器,通过上传和下载的方式进行远程远程项目和本地项目的同步,这样的缺点是:不能实时同步、操作繁琐。而 vs code 是通过 SSH (Secure Shell) 的方式连接到远程服务器,换句话说,vs code 在远程开发过程中扮演的角色更像是一款终端模拟工具,它不需要繁琐的上传和下载步骤,而且实时性更好,只需要在 windows 上保存一下,会瞬间同步到远程开发机。不得不佩服微软在软件方面的实力,一旦他们去专注做一件产品,真的会做到令人惊艳的地步。所以,经过多项的对比,我还是选择了 vs code 作为远程开发工具。这样,真的彻底解放了对终端模拟工具的依赖。
远程开发配置
下面开始详细讲一下 vscode 远程开发的配置。
第一步:安装插件
配置远程开发首先需要安装一个名为 Remote Development 的插件,具体操作步骤如下,
点击扩展按钮搜索 Remote Development安装
安装之后会侧边活动栏看到一个远程资源管理器按钮。
第二步:配置远程服务器
安装插件之后,点击远程资源管理器,在 SSH TARGETS 配置远程服务器,具体步骤如下,
点击齿轮图标打开弹出的 config 文件分别配置 Host、Hostname、User这里需要注意一个,Host 是一个名称,自己可以随意命名。Hostname 是远程服务器的 IP,User 是用于登录远程服务器的账户名称。
”扩展PHP“说起来容易做起来难。PHP已经进化成一个日趋成熟的源码包几十兆大小的工具。要骇客如此复杂的一个系统,不得不学习和思考。构建本章内容时,我们最终选择了“在实战中学习”的方式。这不是最科学也不是最专业的方式,但是此方式最有趣,也得出了最好的最终结果。下面的部分,你将先快速的学习到,如何获得最基本的扩展,且这些扩展立即就可运行。然后你将学习到 Zend 的高级 API 功能,这种方式将不得
392

第三步:打开远程连接窗口
把鼠标放在上一步配置的远程连接条目上,点击 Connect to Host in New Window,然后就会在新的窗口打开我们想要的远程连接。

配置免密登录
由于 vs code 是通过 SSH 远程连接到远程服务器的方式进行远程开发,因此,每次打开远程连接是都会提示输入密码,显然这是非常繁琐的。不过,还好有不错的解决方案,我们可以通过配置免密登录的方式避免每次打开连接时都需要重复输入密码。
第一步:生成 windows 公钥
这个需要 windows 配置有 ssh 工具,可以通过安装 git、openssh 实现。
打开 cmd,
代码语言:javascript代码运行次数:0运行复制<pre class="brush:php;toolbar:false;">$ ssh-keygen
然后一直点击 Enter 键,不用输入任何内容,最后会在
C:\Users\user_name\.ssh
id_rsa.pub
第二步:配置远程服务器
进入 SSH 配置目录,
代码语言:javascript代码运行次数:0运行复制<pre class="brush:php;toolbar:false;">$ cd ~/.ssh$ ls
查看一下是否有一个名为
authorized_keys
id_rsa.pub
authorized_keys
<pre class="brush:php;toolbar:false;">$ touch authorized_keys$ cat ~/id_rsa.pub >> authorized_keys
第三步:修改文件权限
这一步非常重要,如果没有这一步,前面的操作都没有用。就是给
authorized_keys
<pre class="brush:php;toolbar:false;">$ chmod -R 600 authorized_keys
这样就完成了免密登录的配置。
辅助插件一款工具,单凭它自带的工具,是很难满足不同人群的需求的,因此,插件就成了一个不可或缺的部分。通过适当的插件配置能够让一款看似平淡无奇的工具瞬间变的丰富强大起来。我认为 vs code 的优势之一就是它丰富的插件及便捷的配置方式,在这里,我推荐 5 款个人认为不错的 vs code 插件。
TabNine
当然首推还是这一款基于 GPT-2 语言模型的自动补全工具,我在前面一篇文章中花了一篇文章对这款插件进行了介绍。在这里,我再次强烈推荐 TabNine 这款插件,哪怕你使用的不是 vs code 也可以尝试一下这款插件。
TabNine 和我认识中的自动补全工具有很大的不同,传统的补全工具更多的是根据上下文信息和第三方库进行补全,换句话说就是基于既有的内容进行补全。而 TabNine 更多的是偏向推理,它能够根据开发者前面输入的内容快速推理接下来要输入的代码,甚至参数、字符串、符号它都能够准确的推理并补全。
Bookmarks
我们在开发过程中会经常进行跳转或者翻页,当经过一系列的跳转之后想回到最初的位置却发现无从下手了。在使用 Pycharm 时,可以通过快捷键给代码添加上标签,当我们想回到某一个位置时能够使用快捷键或者搜索的方式快速定位到准确的位置,这也是 Pycharm 吸引我的地方之一,它也养成了我喜欢打标签的习惯。
刚从 Pycharm 迁移到 vs code 在标签这一块会很不习惯,发现总是忘记之前所在代码片段。最后发现,vs code 也可以通过配置插件实现强大的标签功能,这款插件就是 Bookmarks。我们能够使用 Ctrl+Alt+K、Ctrl+Alt+J、Ctrl+Alt+L 快捷键添加标签,并且可以快速调整到指定标签位置。
GitLens
多人开始过程中,版本管理工具是必不可少的,其中使用较多的就是 Git。它在日常开发中占据着非常重要的地位,因此版本管理在大多数开发工具中都是必备的功能之一。我之前一直使用 Pycharm,我认为它在版本管理方面已经做的很好了,但是,经过一段时间试用 GitLens 之后才发现,Pycharm 在 Git 版本管理方面对比于 GitLens 真的是相差甚远。
它能够清晰的显示当前文件 的修改时间、修改历史,能够可视化分支、作者、commit 等信息,提供便捷而强大的对比功能。
TODO Highlight
我们在开发过程中,有时会为了测试或某种原因,某段代码需要之后进行修改和完善。如果就不做一些标记,时间久了、需要修改的多了,就很难区分出哪些是需要修改的、哪些是不需要修改的。因此养成做标记的好习惯对提升开发效率具有很大的帮助。
在开发过程中常用的待办标记有
TODO
FIXME
Code Runner
这是一款支持 C、C++、Java、Python 等主流编程语言快速运行的插件,它能够便捷的运行当前活动页代码文件、能够运行选定代码段、运行自定义命令,对于调试代码具有很大的帮助。
以上就是我最终还是选择了 VS code...的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号