github copilot
年初的時(shí)候型宝,就聽說了Copilot這個(gè)插件,但是一直沒有去嘗試使用絮爷。直到最近才去嘗試使用,比較了其它幾款ai相關(guān)插件,總的來說copilot使用體驗(yàn)非常不錯(cuò)趴酣。
網(wǎng)上也有大量的介紹copilot的文章,但是對(duì)使用技巧介紹不算特別多坑夯,自己嘗試總結(jié)下岖寞,希望本文能幫助到大家。
1. 什么是copilot?
GitHub Copilot 是由 GitHub 和 OpenAI 共同開發(fā)的人工智能代碼輔助工具渊涝,俗稱:副駕駛慎璧,通過插件的方式安裝到編輯器(vs code)后,可以幫我們自動(dòng)補(bǔ)全代碼床嫌、根據(jù)注釋生成代碼、解釋代碼胸私、生成測試代碼厌处、生成注釋等等。
2. 為什么有了GPT還需要copilot岁疼?
我們已經(jīng)可以直接向GPT提問阔涉,為啥還需要copilot;
- copilot內(nèi)嵌到vs code編輯器中,無需離開我們的代碼編寫環(huán)境就能提問捷绒、處理瑰排、生成代碼(省去把問題或者GPT的回答來回粘貼的繁瑣)
- copilot生成的代碼更貼近項(xiàng)目(它是基于項(xiàng)目當(dāng)前代碼上下文生成的),因此能生成基于當(dāng)前項(xiàng)目代碼風(fēng)格的代碼暖侨,可移植性更高椭住。
3. 如何安裝?
在編輯器字逗,這里主要說的是vscode編輯器中京郑,安裝兩個(gè)插件:
- github Copilot
- github copilot Chat
插件安裝好后,需要注冊登錄葫掉,登錄方式是通過github賬號(hào)授權(quán)登錄些举。
3.1 注意1: github開啟使用
需要注意的是,授權(quán)登錄的時(shí)候需要到您的github賬號(hào)settings > billing and plans > plans and usage
找到github copilot 然后enable Copilot Copilot
3.2 注意2: 編輯器中開啟配置代理
Copilot Copilot需要用到代理俭厚,在vscode中户魏,通過settings 搜索proxy
下配置就行。
3.3 收費(fèi)問題
copilot是收費(fèi)的挪挤,對(duì)于第一次使用叼丑,首月免費(fèi),然后訂閱費(fèi)用是10美元一個(gè)月扛门,按年是100美元幢码。
對(duì)于我們普通打工人來說還是稍微貴了點(diǎn),不過我們有其它便宜的途徑尖飞。
比如找:x寶、x魚啥的店雅,他們有提供學(xué)生包,不過不太推薦政基,這種有封github賬號(hào)的風(fēng)險(xiǎn),如果實(shí)在是要用闹啦,那么我建議你用一個(gè)子賬號(hào)沮明,不要用你的主賬號(hào)。
當(dāng)然窍奋,如果您對(duì)這些不太放心,也可以私下找我,推薦一個(gè)更靠譜的資源荐健。
4. 使用技巧
好啦酱畅!說了這么多終于來到了最重要的環(huán)節(jié),如何使用江场?
總的來說,使用有兩大區(qū)域塊:
- chat區(qū)域纺酸,直接在聊天框中輸入你的問題(PS: 你可以選中你的代碼行,這樣問問題的時(shí)候址否,它會(huì)根據(jù)你的代碼行生成更可靠的答案)
- 編輯器文件中(比如:自動(dòng)提示餐蔬、注釋生成代碼等等)
我們的所有使用場景,其實(shí)都是在上面兩大區(qū)域完成的佑附。理論上而言樊诺,chat區(qū)域可以完成所有功能,只是編輯器文件中音同,更友好點(diǎn)而言:
通常而言词爬,chat區(qū)域生成的內(nèi)容會(huì)多一點(diǎn),全面點(diǎn)权均。
下面我們具體使用點(diǎn)
4.1 自動(dòng)建議(Tab)
這種最簡單顿膨,你在寫代碼的時(shí)候它自動(dòng)的給你提示,提示的內(nèi)容是灰色的螺句,您可以按下Tab
鍵接受建議虽惭,
通過Esc
鍵丟棄提示。
如果對(duì)自動(dòng)建議不滿意蛇尚,可以切換:
-
alt(option) + ]
下一條建議 -
alt(option) + [
上一條建議
4.2 注釋生成代碼
這是最強(qiáng)大芽唇、也是最使用的功能之一。
您可以先寫一段注釋,寫的越詳細(xì)取劫,它生成的代碼就越滿足您的要求匆笤。
方式1:
一般而言你寫完注釋后,它在下一行它會(huì)有自動(dòng)提示谱邪,如果沒有自動(dòng)提示炮捧。你可以通過alt(option) + \
來觸發(fā)自動(dòng)提示。
方式2:
另外一種更好的方式是惦银,此時(shí)按下ctrl + enter
輸出十種代碼實(shí)現(xiàn),哪種好咆课,接受那種就行。
這種方式非常推薦3毒恪J轵健!
當(dāng)然你也可以直接在chat中直接問迅栅。
4.3 解釋代碼
這對(duì)于你看代碼來說殊校,真的太方便了,不熟悉的語法知識(shí)點(diǎn)啥的隨便問读存。
有幾種方式:
方式1
選中要解釋的代碼,在chat聊天框中輸入/explain
如果要按照中文解釋为流,多寫一些字比如:/explain 用中文解釋
方式2
選中要解釋代碼,右鍵copilot > explain this
PS: 比較快捷,但是默認(rèn)輸出方式是英文
4.4 生成測試
前面的解釋代碼的方式一呕屎、方式二,換成/tests
generate tests
即可
4.5 行內(nèi)操作
所有的解釋敬察、生成代碼秀睛、測試、fix等都可以在行內(nèi)操作進(jìn)行静汤。
所謂行內(nèi)琅催,就是在不離開編輯器文件代碼的的情況下操作,這個(gè)時(shí)候只需要按comand + I
這個(gè)時(shí)候會(huì)當(dāng)前光標(biāo)所在的行展示一個(gè)輸入框虫给,在輸入框可以提問藤抡,也可以輸入/explain``/tests
等等。
有時(shí)候?qū)ψ詣?dòng)生成的代碼不滿意抹估,可以選中代碼缠黍,對(duì)它提要求,可以在行內(nèi)操作完成药蜻。
4.6 q/a對(duì)話
在任意代碼文件中輸入注釋符號(hào)瓷式,然后輸入q:
后跟一個(gè)問題,比如// q: xx問題
,
在下一行中輸入// a:
copilot會(huì)提供最簡短的回答內(nèi)容语泽。
4.7 chat聊天區(qū)域擴(kuò)大
如果我們嫌chat區(qū)域不夠大贸典,又或者我想用這個(gè)chat聊天來學(xué)習(xí),如果始終還是在左側(cè)區(qū)域那么久顯得非常小了踱卵,我們可以點(diǎn)擊chat頂部的三個(gè)點(diǎn)擴(kuò)大后使用廊驼,變大了非常爽!
4.8 快捷鍵總結(jié)
-
alt(option) + \
手動(dòng)觸發(fā)提示 -
alt(option) + ]
下一條建議 -
alt(option) + [
上一條建議 -
ctrl + enter
十種代碼實(shí)現(xiàn) -
comand + I
行內(nèi)操作