任何 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 也讓您可以輕鬆地使用 [全部認可並推送] 和 [全部認可並同步] 快捷方式,以一鍵進行認可和同步。 當您雙擊 變更 和 暫存變更 區段中的任何檔案時,您可以看到與未修改檔案版本的逐行比較。 請參閱 比較檔案 - 差異視圖。
17.6 版的新功能:您也可以透過輸入 # 或選取提交訊息文本框右下角的 [#] 按鈕,來參考議題或拉取請求。 如需詳細資訊,請參閱 參考問題和提取要求 部落格文章。
17.12 版的新功能:當您重新命名檔案時,您會看到 Git 變更 視窗頂端的通知列,指出檔案已被重新命名,並提醒您將該變更暫存。 此通知會出現在您暫存或認可任何專案之前。 您可能想要暫存並認可變更,再進行其他變更,以確保 Git 偵測到變更為重新命名,而不是刪除並新增新檔案。
用 Copilot 聊天查看本地變更
17.13 版的新功能:安裝 GitHub Copilot 之後,您可以先讓 GitHub Copilot 檢閱您的程式代碼變更,再認可這些變更。
要啟用此功能,請打開 工具>選項 窗格,展開 「所有設定>預覽功能 」區塊,並選擇 「拉取請求評論」 勾選框。 展開GitHub>Copilot>原始碼控制整合的所有>,並選擇啟用 Git 預覽功能勾選框。
要啟用此功能,請開啟 工具>選項 對話框,展開 環境>預覽功能 區塊,並選擇 拉取請求註解(Pull Request Comments) 勾選框。 展開 GitHub>Copilot>版本控制整合 區塊,並選擇 啟用 Git 預覽功能 勾選框。 請選擇 [確定]。
在 [Git 變更] 視窗中,按一下看起來像帶有亮點的批註圖示的[使用 Copilot 檢閱變更] 按鈕。
過了一會兒,[Git 變更] 視窗中會顯示程式碼檢閱批注數目的連結,您可以點擊以檢視和瀏覽批注。 如果未偵測到任何問題,會出現訊息 Copilot 未評論任何檔案。
程式代碼檢閱意見反應會顯示為批注,其中顯示潛在問題的簡短摘要,而您可以決定進行變更,或使用批注方塊右上方的向下箭號按鈕來關閉批注方塊。
若要移除所有批注,請使用 [Git 變更] 視窗中的 X 來關閉 Copilot 程式代碼檢閱連結。
還原、重設或修改提交
當您按兩下 提交時,Visual Studio 會在個別的工具視窗中開啟其詳細資訊。 您可以從這裡還原提交、重置(撤銷)提交、修改提交訊息,或在提交上建立標籤。 當您在提交中點擊變更的檔案時,Visual Studio 會開啟提交及其父提交的並排 Diff 檢視。
使用 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 Copilot 中提供額外的指引,來全域自訂提交訊息格式。 要新增自訂提示指示,請打開工具>選項欄,並展開GitHub>Copilot>原始碼控制整合的所有>區塊。 在 「提交訊息自訂指令 」框中,輸入你新增的內容到提示文字中。 變更會影響每個提交訊息。 有了這個即時指導,團隊就可以標準化提交訊息格式。
從 Visual Studio 2022 版本 17.12 開始,您可以透過在 GitHub Copilot 的提示中提供額外指引,全域自訂提交訊息的格式。
若要新增自訂提示指示,請開啟 工具>選項 對話框,並展開 GitHub>Copilot 區塊。 在 Source Control 整合群組中,在提交訊息自訂指令方塊中輸入你對提示文字的新增內容,然後選擇OK。 變更會影響每個提交訊息。 有了這個即時指導,團隊就可以標準化提交訊息格式。
GitHub Copilot 瞭解「主旨」(認可訊息的第一行)、「本文」(描述更詳細變更的區段),以及「頁尾」(最後一節)。 例如「使用全部小寫」、「限制為 50 個字元」、「限制正文為 2 句」、「新增三個雜湊號的頁腳」或「遵循傳統提交標準」,後者參考了廣泛使用的 Conventional Commits 標準。