交互式暂存
逐个或批量审查并暂存更改。
导航
按 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)或终端默认值中打开。