任何 Git 工作流程的核心部分是修改檔案,並提交這些檔案中的變更。 雖然本文參考 GitHub 存放庫,但您可以從遠端與您選擇的 Git 提供者合作,例如 GitHub 或 Azure DevOps。 您也可以不使用任何提供者,在本機工作。
Git 會在您工作時追蹤存放庫中的檔案變更,並將存放庫中的檔案分成三個類別。 這些變更相當於您在命令列中輸入 git status 命令時所看到的內容:
- 未修改的檔案:這些檔案自上次提交後未變更。
- 修改過的檔案:這些檔案已自上次提交後有變更,但您尚未暫存至下一次提交。
- 已分階段的檔案:這些檔案有已被修改並將新增至下一個提交中的變更。
當您執行工作時,Visual Studio 會在 [Git 變更] 視窗的 [變更] 區段中,追蹤專案的檔案變更。
暫存變更並進行認可
若要在準備好時暫存變更,請在您想要暫存的每個檔案上選取 [+ (加號)] 按鈕,或以滑鼠右鍵單擊檔案,然後選取 [暫存]。 您也可以使用 [+] 區段頂端的 [階段所有 (加號)] 按鈕,以一鍵暫存所有修改過的檔案。
當您暫存變更時,Visual Studio 會建立 已暫存變更 區段。 只有 [分段變更] 區段中的變更會新增至下一次提交,您可以透過選取 [認可分段] 來執行此操作。 此動作相應的執行指令為 git commit -m "Your commit message"。
按一下 [-] 減號按鈕可以取消暫存變更。 此動作的對等命令為 git reset <file_path> 解除暫存單一檔案,或 git reset <directory_path> 解除暫存目錄中的所有檔案。
您也可以略過暫存區域,選擇不要暫存修改的檔案。 在此情況下,Visual Studio 可讓您直接提交變更,而不需要暫存變更。 只要輸入您的提交訊息,然後選取 提交全部。 此動作相應的執行指令為 git commit -a。
Visual Studio 也讓您可以輕鬆地使用 [全部認可並推送] 和 [全部認可並同步] 快捷方式,以一鍵進行認可和同步。 當您雙擊 變更 和 暫存變更 區段中的任何檔案時,您可以看到與未修改檔案版本的逐行比較。 請參閱 比較檔案 - 差異視圖。
檢視檔案間變更的行數
要快速了解待提交的範圍,請在 Git 變更視窗中選擇「開啟變更摘要」。 Visual Studio 會在同一個統一的視圖中顯示多個檔案的變更行,讓你在提交前可以先篩選變更。
打開摘要後,Visual Studio 會在同一視圖中顯示多個檔案的變更行。
你也可以在提交訊息文字方塊中輸入 #,或點選提交訊息文字方塊右下角的 # 按鈕,來引用議題或提取要求。 如需詳細資訊,請參閱 參考問題和提取要求 部落格文章。
當你重新命名檔案時,會在 Git 變更 視窗頂端看到通知欄,通知你檔案已被重新命名,並提示你先進行該變更。 此通知會出現在您暫存或認可任何專案之前。 您可能想要暫存並認可變更,再進行其他變更,以確保 Git 偵測到變更為重新命名,而不是刪除並新增新檔案。
用 Copilot 聊天查看本地變更
安裝 GitHub Copilot 後,你可以在提交程式碼變更前,先讓 GitHub Copilot 審查你的程式碼變更。
要啟用此功能,請打開 工具>選項 窗格,展開 「所有設定>預覽功能 」區塊,並選擇 「拉取請求評論」 勾選框。 展開GitHub>Copilot>原始碼控制整合的所有>,並選擇啟用 Git 預覽功能勾選框。
要啟用此功能,請開啟 工具>選項 對話框,展開 環境>預覽功能 區塊,並選擇 拉取請求註解(Pull Request Comments) 勾選框。 展開 GitHub>Copilot>版本控制整合 區塊,並選擇 啟用 Git 預覽功能 勾選框。 請選擇 [確定]。
在 [Git 變更] 視窗中,按一下看起來像帶有亮點的批註圖示的[使用 Copilot 檢閱變更] 按鈕。
過了一會兒,[Git 變更] 視窗中會顯示程式碼檢閱批注數目的連結,您可以點擊以檢視和瀏覽批注。 如果未偵測到任何問題,會出現訊息 Copilot 未評論任何檔案。
程式碼審查回饋會以註解形式顯示,簡要說明潛在問題,你可以選擇修改或透過留言框右上方的上箭頭按鈕關閉留言框。
若要移除所有批注,請使用 [Git 變更] 視窗中的 X 來關閉 Copilot 程式代碼檢閱連結。
在留言列表中瀏覽留言
Git 變更 視窗也會顯示所有 Copilot 審核評論的清單,按檔案進行整理。 你可以雙擊列表中的任何註解,直接導向編輯器中與對應代碼內嵌的該註解。
在 [Git 變更] 視窗中,按一下看起來像帶有亮點的批註圖示的[使用 Copilot 檢閱變更] 按鈕。
過了一會兒,[Git 變更] 視窗中會顯示程式碼檢閱批注數目的連結,您可以點擊以檢視和瀏覽批注。 如果未偵測到任何問題,會出現訊息 Copilot 未評論任何檔案。
程式碼審查回饋會以註解形式顯示,簡要說明潛在問題,你可以選擇修改或透過留言框右上方的上箭頭按鈕關閉留言框。
若要移除所有批注,請使用 [Git 變更] 視窗中的 X 來關閉 Copilot 程式代碼檢閱連結。
應用當地法規審查的建議
GitHub Copilot 也能根據本地程式碼審查經驗的註解建議程式碼編輯,幫助你更快解決回饋並讓變更準備好提交。 Copilot 審核你的本地變更並留下註解後,你可以直接從註解中請求可執行的程式碼建議。 建議的變更會顯示在內嵌差異視圖中,你可以檢視原始程式碼、擬議的編輯內容及相關上下文,然後修改和測試修正後再提交。
要使用此功能,請啟用以下兩個功能旗標:
- [工具]> [選項]> [預覽功能]> [提取要求註解]
- 工具>選擇權>GitHub>副駕駛>原始碼控制整合>啟用 Git 預覽功能
你也可以在編輯器裡從 拉取請求註解 中套用程式碼建議。
還原、重設或修改提交
當您按兩下 提交時,Visual Studio 會在個別的工具視窗中開啟其詳細資訊。 您可以從這裡還原提交、重置(撤銷)提交、修改提交訊息,或在提交上建立標籤。 當您在提交中點擊變更的檔案時,Visual Studio 會開啟提交及其父提交的並排 Diff 檢視。
使用 GitHub Copilot Chat 產生認可訊息
透過 Visual Studio 和 GitHub Copilot,你可以利用 AI 產生詳細的提交訊息,描述你的變更。
注意
若要啟用 AI 產生的認可訊息,您需要 GitHub Copilot 和 GitHub Copilot Chat。 要開始,請參閱 管理 GitHub Copilot 安裝與狀態。
當您準備好提交時,請在提交訊息文本框的右下角使用閃亮的畫筆圖示(工具提示:新增 AI 產生的提交訊息),以請求 AI 產生的提交訊息。 AI 產生的文字會新增至您已經擁有的任何內容。 仔細閱讀,以查看其是否正確。 您可以選擇接受插入的內容或將其捨棄。 如果您接受插入,則可以先編輯文字再提交。 當您準備好時,請選擇 [提交暫存] 按鈕,或在提交訊息編輯框下方的下拉式清單中選擇其他可用的提交選項之一。
使用 GitHub Copilot Chat 產生認可訊息
透過 Visual Studio 17.9 版和更新版本和 GitHub Copilot 擴充功能,您可以使用 AI 來產生描述變更的詳細認可訊息。
注意
若要啟用 AI 產生的認可訊息,您需要 GitHub Copilot 和 GitHub Copilot Chat。 開始使用,請參閱 Get GitHub Copilot for Visual Studio 2022。
當您準備好提交時,請在提交訊息文本框的右下角使用閃亮的畫筆圖示(工具提示:新增 AI 產生的提交訊息),以請求 AI 產生的提交訊息。 AI 產生的文字會新增至您已經擁有的任何內容。 仔細閱讀,以查看其是否正確。 您可以選擇接受插入的內容或將其捨棄。 如果您接受插入,則可以先編輯文字再提交。 當您準備好時,請選擇 [提交暫存] 按鈕,或在提交訊息編輯框下方的下拉式清單中選擇其他可用的提交選項之一。
如果你一直在使用 GitHub>> 的 Commit 訊息自訂指令文字框來自訂Copilot產生的提交訊息,該設定將不再適用。
未來,請在你倉庫的 Copilot 指令檔中管理提交訊息指令。 此設定會將提交訊息指引與你其他 Copilot 自訂指示放在同一個位置。
設定自訂指令
將你的提交訊息指令加入倉庫的 Copilot 指令檔。 關於設定步驟,請參見 「新增儲存庫」說明。
使用 Visual Studio 2022,你可以在 GitHub Copilot 的提示中提供額外指引,全球自訂提交訊息格式。
若要新增自訂提示指示,請開啟 工具>選項 對話框,並展開 GitHub>Copilot 區塊。 在 Source Control 整合群組中,在提交訊息自訂指令方塊中輸入你對提示文字的新增內容,然後選擇OK。 變更會影響每個提交訊息。 有了這個即時指導,團隊就可以標準化提交訊息格式。
GitHub Copilot 瞭解「主旨」(認可訊息的第一行)、「本文」(描述更詳細變更的區段),以及「頁尾」(最後一節)。 例如「使用全部小寫」、「限制為 50 個字元」、「限制正文為 2 句」、「新增三個雜湊號的頁腳」或「遵循傳統提交標準」,後者參考了廣泛使用的 Conventional Commits 標準。