GitHub Copilot 完整教學

Part 8:Copilot Chat 進階技巧

善用 @ 參照、/ 命令、# 檔案參照

@ 參照 Slash 命令 # 檔案

🎯 本單元學習目標

完成這個單元後,你將能夠:

1. @ 參照功能

使用 @workspace、@file 等參照整個專案或特定內容

2. Slash 命令

熟練使用 /fix、/tests、/explain 等快速命令

3. # 檔案參照

用 #file:檔名 精準指定要討論的檔案

4. 組合應用

結合多種技巧,讓 Chat 更精準回應

🔤 Chat 中的三種特殊符號

@

@ 參照功能

參照整個專案、檔案、選取內容等上下文

範例:@workspace@file@selection

/

Slash 命令

快速執行特定動作,如修復、測試、解釋

範例:/fix/tests/explain

#

# 檔案參照

指定特定檔案作為討論對象

範例:#file:app.py

📍 @ 參照功能

在 Chat 輸入框輸入 @,會出現參照選單:

@ 參照選單

輸入 @ 後出現的參照選單

參照 功能說明
@workspace 參照整個專案的所有檔案
@file 參照目前開啟的檔案
@selection 參照目前選取的程式碼

🌐 @workspace:詢問整個專案

範例提問

@workspace 這個專案的架構是什麼?

Copilot 會分析整個專案,告訴你專案結構

@workspace 示範

使用 @workspace 詢問專案架構的回應

使用情境:
  • 「@workspace 這個專案用了哪些套件?」
  • 「@workspace 找出所有的 API 端點」
  • 「@workspace 哪裡處理使用者登入?」

⚡ Slash 命令:快速動作

在 Chat 輸入框輸入 /,會出現命令選單:

Slash 命令選單

輸入 / 後出現的 Slash 命令選單

命令 功能說明
/explain 解釋選取的程式碼
/fix 修復程式碼中的問題
/tests 為選取的程式碼產生測試
/doc 產生程式碼文件/註解

🔧 /fix:修復程式碼

1

選取有問題的程式碼

在編輯器中反白選取需要修復的程式碼

2

輸入 /fix

在 Chat 中輸入 /fix 然後送出

/fix 示範

使用 /fix 修復程式碼的回應

Copilot 會:找出問題所在,並提供修正後的程式碼

🧪 /tests:產生單元測試

1

選取要測試的函式

在編輯器中反白選取一個函式

2

輸入 /tests

在 Chat 中輸入 /tests 然後送出

/tests 示範

使用 /tests 產生單元測試的回應

產生的測試可能使用:unittest、pytest 或其他測試框架

📄 # 檔案參照:指定討論檔案

使用 #file:檔名 可以精準指定要討論的檔案:

範例提問

#file:app.py 這個檔案在做什麼?

Copilot 會專門針對該檔案內容進行回答

#file 示範

使用 #file:檔名 參照特定檔案

使用情境:
  • 「#file:config.py 這些設定是做什麼用的?」
  • 「#file:utils.py 幫我加一個新的工具函式」

🔗 組合應用:更精準的提問

可以組合使用這些符號,讓 Copilot 更精準理解你的需求:

組合範例 效果
@workspace /explain 解釋整個專案的架構
#file:main.py /fix 修復指定檔案中的問題
@selection /tests 為選取的程式碼產生測試
#file:api.py 加入錯誤處理 針對特定檔案加入功能
技巧:越精準的參照,Copilot 的回答就越準確!不要只說「這段程式碼」,要明確指出是哪個檔案或哪段程式。

📋 常用命令速查表

@ 參照

  • @workspace - 整個專案
  • @file - 目前檔案
  • @selection - 選取內容
  • @terminal - 終端機內容

/ 命令

  • /explain - 解釋程式碼
  • /fix - 修復問題
  • /tests - 產生測試
  • /doc - 產生文件
  • /clear - 清除對話

# 參照

  • #file:檔名 - 指定檔案
  • #editor - 編輯器內容
  • #codebase - 程式碼庫

🏋️ 實作練習

練習目標:熟悉 @、/、# 的使用方式

練習步驟

  1. 開啟一個有多個檔案的專案
  2. 在 Chat 輸入 @workspace 這個專案有哪些主要檔案?
  3. 選取一段程式碼,輸入 /explain
  4. 選取一個函式,輸入 /tests 產生測試
  5. 輸入 #file:你的檔名.py 這個檔案可以怎麼改進?
進階挑戰:嘗試組合使用,例如 @workspace 找出所有沒有寫註解的函式

📝 隨堂測驗

問題 1:想要讓 Copilot 分析整個專案,應該使用什麼參照?

A. @file
B. @workspace
C. @selection
D. #project

問題 2:想要為一段程式碼產生單元測試,應該使用什麼命令?

A. /fix
B. /explain
C. /tests
D. /doc

問題 3:想要指定討論 config.py 這個檔案,應該怎麼寫?

A. @file:config.py
B. #file:config.py
C. /file:config.py
D. file:config.py

✅ 測驗解答

問題 1 答案:B

@workspace 可以讓 Copilot 參照整個專案的所有檔案,進行全專案分析。

問題 2 答案:C

/tests 命令會為選取的程式碼自動產生單元測試。

問題 3 答案:B

使用 #file:檔名 的格式來指定特定檔案,例如 #file:config.py

🎉 Part 8 重點回顧

@ 參照

@workspace 整個專案
@file 目前檔案
@selection 選取內容

/ 命令

/fix 修復問題
/tests 產生測試
/explain 解釋程式

# 檔案參照

#file:檔名
精準指定要討論的檔案

組合應用

可以組合使用
讓提問更精準

核心觀念

「越精準的參照,越準確的回答」

下一單元預告

Part 9:實戰應用 - 函式生成
用 Copilot 快速產生各種實用函式!