交互式暫存
逐個或批量審查並暫存更改。
導航
按 2 聚焦 修改的檔案 面板。
快捷鍵
| 按鍵 | 動作 |
|---|---|
space | 切換 暫存/取消暫存 |
ctrl+s | 暫存所有 |
ctrl+u | 取消暫存所有 |
r | 解決衝突(僅用於衝突檔案) |
d | 丟棄更改 |
e | 編輯檔案 (在外部編輯器打開) |
enter | 查看差異 |
工作流
丟棄更改
丟棄更改包含安全檢查,以防止意外數據丟失。
- 選擇: 高亮顯示您想要丟棄的檔案。
- 觸發: 按
d。 - 邏輯流程:
- 場景 A (簡單): 檔案僅在工作區或僅在暫存區有更改。
- 彈窗: "Confirm Discard" (確認丟棄)。
- 場景 B (複雜): 檔案在工作區和暫存區都有更改(部分暫存)。
- 彈窗: "Choose Discard Type" (選擇丟棄類型 - 丟棄全部或丟棄未暫存)。
- 後續: 選擇後出現確認彈窗。
- 場景 A (簡單): 檔案僅在工作區或僅在暫存區有更改。
- 確認: 按
enter確認。
解決合併衝突
當 Git 無法自動合併更改時(例如,拉取、合併分支或切換到有衝突的分支後),受影響的檔案將在 修改的檔案 面板中標記為衝突狀態。
- 識別: 衝突檔案在檔案清單中帶有特殊指示符。
- 選擇: 高亮顯示衝突檔案。
- 觸發: 按
r打開 解決衝突 選項彈窗。 - 選擇解決策略:
- 重新開始檔案合併: 恢復檔案中的衝突標記(丟棄已暫存的解決方案)。如果您想手動重新編輯衝突,請使用此選項。
- 接受本地更改(ours): 保留當前分支的檔案版本,丟棄傳入的更改。
- 接受傳入更改(theirs): 接受另一個分支的檔案版本,丟棄本地更改。
- 確認: 按
enter應用選定的解決策略。 - 審查: 衝突已解決。您現在可以暫存並提交該檔案。
提示
解決衝突後,務必使用 enter 查看檔案差異,確保解決方案正確後再提交。
查看差異
- 選擇: 高亮顯示一個檔案。
- 觸發: 按
enter。 - 結果: 詳細視圖 (右側面板) 更新顯示差異。
- 綠色: 新增行。
- 紅色: 刪除行。
拆分視圖 (暫存 vs 未暫存)
查看更改時,您可以拆分詳細視圖,以便並排比較暫存和未暫存的更改(如適用)。
- 導航: 使用
[和]在拆分面板之間切換焦點或切換視圖。 - 上下文: 當您部分暫存了檔案並希望查看剩餘內容時非常有用。
編輯檔案
要進行快速更改或在完整的 IDE 中打開檔案:
- 選擇: 在清單中高亮顯示檔案。
- 觸發: 按
e。 - 動作: 檔案將在您配置的編輯器(例如 Vim、VS Code)或終端預設值中打開。