手把手體驗遠程開發,確實爽


從 0 開始體驗一波遠程開發

大家好,我是魚皮。

記得剛開始學編程的時候,我理所應當地以為只能編輯自己電腦上的代碼文件。如果想要修改服務器上的代碼,只能先把代碼從服務器上拷貝下來,然后在本地修改好再上傳到服務器上。

但是這樣效率實在太低了!

后來我學聰明了,利用 git 在本地和遠程之間同步。先在本地修改好代碼,git push 推送到 Github 代碼托管平台上,再到服務器上 git pull 拉取。雖然方便了不少,不過遇到頻繁修改的情況還是很抓狂。

那有沒有更高效的方式,能夠保持本地和遠程代碼的實時同步呢?

請出今天的主角:遠程開發技術,下面我帶大家體驗一波。

遠程開發實戰

本文大綱:

魚皮遠程開發實戰導圖

何為遠程開發?

遠程是相對於本地的。

傳統開發中,我們都是本地寫好代碼再放到服務器上運行。

而遠程開發的特點是:

  1. 代碼不放在自己電腦上,而是在遠程連接的服務器上

  2. 可以在本地直接實時查看和修改遠程服務器上的代碼

也就是說,我們可以蹲在家里,用自己的一台電腦去靈活編輯遠在天邊的服務器上的代碼。

注意!不要把遠程開發理解為遠程辦公哈哈。

聽起來還是挺爽的,有很多種技術可以實現遠程開發,比如最古老的遠程控制方式。這里推薦大家直接使用開發工具自帶的遠程開發插件,比如 JetBrains 全家桶和 VS Code。

由於 VS Code 相對輕量易用,這里帶大家實戰一波 VS Code 遠程開發。

實戰體驗

1. 安裝插件

首先打開 VS Code,點擊左側擴展按鈕,搜索 "remote",能夠看到一些遠程開發插件,支持 SSH 遠程連接、連接 Docker 容器、連接Windows 上的 Linux 子系統等。

這里我們選擇下圖第二個 Remote - SSH ,點擊安裝即可:

安裝插件

2. 遠程連接

安裝好之后,按 ctrl + shift + p 打開命令面板,輸入 "remote",找到 Remote - SSH: Add New SSH Host ,添加一個 SSH 遠程連接。

根據提示輸入你要連接的遠程服務器的用戶名、主機地址(如果沒有服務器,在本地啟動虛擬機也可以),記得帶上 -A 參數(開啟代理轉發功能):

輸入連接信息后,選擇將該信息保存到一個配置文件中:

然后連接信息就添加成功了:

點擊 connect 按鈕,就連接成功了,在左側面板中可看到 “已連接到遠程”:

3. 實時瀏覽

連接到遠程后,我們就可以像操作自己本地電腦一樣,瀏覽遠程服務器上的文件。

比如說我這里進入自己的項目目錄:

打開文件夾

在左側可以看到目錄下的文件:

4. 遠程編輯

讓我們在編輯器中新建一個文件 test.java

可以使用 XShell 等其他遠程 SSH 連接軟件訪問同一台服務器,進入同一個目錄,用 ls 查看目錄下的文件,能看到在 VS Code 中新建的 java 文件:

5. 實時協作

我們可以用 VS Code 和其他 SSH 連接軟件(如 XShell)來模擬兩個用戶正在同時協作編寫同一個代碼文件。

先在 VS Code 中寫下一行優質代碼:

再在 XShell 中編輯該文件,可以立即看到 VS Code 寫下的那行代碼,在它下面再寫一行:

保存之后,在 VS Code 中就能看到全部代碼了:

6. 端口轉發

既然我們編輯的代碼是在遠程的,那代碼也是運行在遠程的,假如說要查看遠程項目的運行效果,怎么辦呢?

VS Code 提供了端口轉發功能,可以配置遠程服務器和本地端口的映射,以支持本地直接訪問到遠程服務器的應用。

ctrl + shift + p 打開命令面板,搜索 "forward",選擇轉發端口:

輸入要轉發的端口號(應用占用的端口),就添加成功了,非常方便!

然后就能在本地訪問運行的項目啦!

7. 遠程調試

除了遠程編輯代碼外,我們可以利用 VS Code 本身的代碼提示能力和調試能力。由於遠程調試和本地調試幾乎沒有任何區別,此處不再演示。

感受

雖然之前早就聽說了遠程開發,但一直覺得這玩意配置肯定會很麻煩,而且沒啥用。但實際體驗下來,不僅安裝方便,而且操作友好、基本感受不到延遲,就像在用自己的電腦一樣,真心非常爽!

遠程開發有很多好處:

  1. 由於代碼運行在遠程服務器,能夠大大節省自己電腦的資源,不會出現多開幾個項目電腦就卡如狗的情況。

  2. 可以多人協同編輯,提高協作效率。

  3. 不用在本地搭建環境,就能快速上手開發。尤其是一條龍開發、啥都讓你干的時候,更爽,比如之前我去緊急支持一個項目的時候,同事有一台開發機,上面有現成的可運行環境和項目代碼。下次再遇到這種情況,我就直接連他的服務器遠程開發就行了。

  4. 如果對 Linux 服務器操作不太熟悉,也可以把遠程開發當成一個傻瓜式服務器管理軟件。


以上就是本期分享,感興趣的同學可以看下我在小破站新發布的 VS Code 遠程開發演示視頻(https://www.bilibili.com/video/BV1s64y167cM/)。

我是魚皮,正在努力變強(禿)的知識博主,歡迎閱讀 我從 0 自學進入騰訊的編程學習、求職、考證、寫書經歷,不再迷茫!

我學計算機的四年,共勉!

點贊 還是要求一下的,祝大家都能心想事成、發大財、行大運。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM