一个屌丝探索随时随地编程的终极方案
之前从来没有想过,我要真的使用Vim来写代码,其实之前也学习了一段时间的Vim,这是一个强大的编辑器,毋庸置疑。但是用于做项目开发总是憋不过来习惯。于是很长一段时间Vim都只是修改服务器相关配置文件的工具,用它写代码还是没有那个打算,也许是真的还没有找到那个所谓的痛点。
第一阶段:本地需求。只需要一台个人PC,Web服务以及数据库服务基本上都是在一台PC上完成。这样倒是简单方便,但是去哪都抱着一个电脑太费劲了,于是有了第二阶段。
第二阶段:同步需求。将文档传到任意一个云平台。或云盘,或Github。只要是能同步代码文档就可以。这样找个电脑就OK,将云端代码down下来就可以继续编码了。但是服务什么的就得在所有的电脑都要配置好,如果是数据库还得建相同的数据库,相同的数据表;而且代码down来down总归是很麻烦的。
第三阶段:远程需求。这一阶段虽然比较高端但是又回归到了一台PC上,代码down来down去,总归太麻烦,如果只是在一台电脑上架起需要的所有服务,并且能远程操作,这样就省事多了。当然这样需要具备以下要点:
- 需要一台Mac or Linux电脑做主机。
- 主机要一直保持未关机状态并联网。可能你已经开始不去想Windows了。
- 能够通过命令行连接主机,并且终端下编码。咱不再说Windows了好吗。
- 需要一个足够轻量级的SSH客户端来进行远程连接。
- 选择一个终端下能编码的编辑器。Vim当然是首选。
- 选择一个可以随时保存终端会话的工具,因为你不希望每次重新连接的时候,再重新载入一遍所有要编辑的文件。tmux当然是首选。
好了,有了上面这些个条件,你就可以随时随地的高大上的进行远程编程了,只要找到一个能接入互联网的终端,就可以随时随地进行编码了。
可能你会说要点都已经列出来了,可是怎么实现呢?我只是一个屌丝,上述要点似乎看起来有点昂贵啊。别担心,恰巧我也是一个屌丝,好人做到底,送佛送到西。我再来分享一下我是怎么处理的。
需要一台主机并且要长期联网。首先相信大家都有电脑并且家里有网。
- 屌丝方案:把自家电脑Windows卸载了,重新装上类Linux系统。
- 高富帅方案:直接购买一台iMac摆在家里。
极客方案:购买云服务器,自主配置服务器,当然系统一定要选Linux。
恰好我有一台还能用的Mac mini,已经相当的幸福了。
远程连接主机。随时随地能连接主机这是关键一步。如果使用的是家里的网络,则需要借助工具实现内网穿透(公网环境访问内网主机);如果是云服务器,直接使用服务商提供的公网IP就OK了。
- 屌丝and高富帅方案:推荐使用花生壳服务实现内网穿透。具体方案看我另外一篇文章:使用花生壳服务实现内网穿透 | LP’s Blog
- 极客方案:直接使用IP连接主机。
SSH工具。*nux直接使用终端
ssh username@host_ip
命令连接主机即可,Windows下推荐Putty,因为足够轻量;Andriod下我推荐JuiceSSH,因为好看;iPhone就不推荐了,因为没用过不了解。- 编码工具。推荐Vim以及tmux联合,当然就需要有使用Vim以及tmux的相关知识。Vim的相关操作技巧以及插件安装可以看这里,Vim | LP’s Blog,帮你入门如何将Vim打造成强大的IDE,剩下就靠自己了。
- 最后一个可选项:蓝牙键盘。如果已经具备了上述条件,随时随地编程已经基本上达到了80%的功力。那剩下的20%的任务就交给手机来完成了,虽然用手机来编码听起来是那么的不靠谱。但是没准正在高铁上小憩,突然灵感就上来了。那么要在手机上编码一个蓝牙键盘就必不可少了。
废话了这么多,总结一下就是:Mac/Linux+SSH+Vim+tmux.