文档工具
Git 与 GitHub
在所选仓库中浏览提交历史、打开 diff,并压缩、拣选、删除提交或修改提交信息。
Kiln 把提交历史、diff 和拉取请求放在工作区检查器中,紧挨着终端。每个 Git 操作都只针对你选中的仓库,即使工作区横跨多个仓库,改写历史也很安全。

非活动工作区会暂停自动检查仓库状态。上次的结果仍会保留显示,返回该工作区后会恢复检查。
打开 Git 工具
右侧的工作区检查器包含更改和 GitHub。也可以从标题栏的工具菜单打开源代码管理和 GitHub,它们会在当前工作旁边打开,不会替换终端任务。
GitHub 功能依赖 GitHub CLI。使用前请先安装 gh 并登录。详见安装与更新。
选择仓库
工作区可以指向单个仓库,也可以指向包含多个仓库的父文件夹,例如 ~/dev/projects。在多仓库工作区中,请用 Git 和 GitHub 工具里的仓库选择器指定要操作的仓库。
选择仓库只改变 Git 操作的作用对象。任务的工作目录仍是工作区文件夹,代理也不会被移到你正在查看的仓库里。详见工作区与任务。
警告 在多仓库工作区中改写历史之前,请先确认选中的仓库。
浏览历史和 diff
打开更改并选择一个仓库,即可查看它的提交历史。列表打开后就能直接操作,没有单独的编辑模式。
| 操作 | 方法 |
|---|---|
| 选择提交 | 点击提交 |
| 选择范围 | 在多行上拖动,或按住 Shift 点击 |
| 打开提交的 diff | 双击提交 |
| 显示提交操作 | 右键点击提交或选中的内容 |
| 浏览其他分支 | 使用分支筛选器 |
| 打开更大的视图 | 点击展开图标 |
用分支筛选器可以浏览其他分支,无需签出。展开图标会在更大的标签页中打开同一份历史,操作方式不变。在多仓库概览中,点击仓库旁的历史图标可直接打开这个大视图。
按 ⇧⌘L 打开历史。单仓库工作区会直接打开历史;有多个仓库时,会先打开仓库概览,让你选择一个。
注意 本页快捷键以 macOS 按键表示。在 Windows 上,应用快捷键中的
⌘对应Ctrl+Shift,因此⇧⌘对应Ctrl+Shift+Alt。
修改提交信息
- 右键点击当前分支上的某个提交。
- 选择修改信息。
- 在确认对话框中编辑信息并应用。
如果该提交已经发布,远程历史也需要更新。继续之前,请先阅读对话框中的警告。
压缩提交
- 在提交行上拖动,或按住 Shift 点击,选中一个范围。
- 从选中内容的操作或右键菜单中选择压缩。
- 核对目标分支和提交,然后编辑合并后的提交信息。
- 如有共享历史警告,查看后确认。
压缩适用于当前分支上受支持的线性区段内的连续提交。
提示 按住 Option 拖动(Windows 上按住 Alt 拖动)保持原有行为:重新排列提交顺序,而不是选择范围。
从其他分支拣选
- 在历史筛选器中选择源分支。
- 选中需要的提交。
- 选择拣选。
Kiln 会把选中的更改作为新提交应用到当前分支。筛选器只改变你浏览的内容,绝不会签出源分支。
删除提交
选中一个或多个提交,然后选择删除提交。Kiln 通过改写历史,从当前分支中移除这些提交的更改。这和 revert 不同,revert 会新增一个提交。确认前请检查受影响的范围。
共享历史与恢复
压缩、删除和拣选都遵循同样的安全步骤。
- 先检查。执行前,Kiln 会检查 worktree、分支、
HEAD和远程状态。 - 备份引用。 Kiln 把原始的
HEAD保存到一个备份引用中,备份信息可以在结果详情中找到。 - 共享历史警告。受影响的提交属于远程默认分支,或者 Kiln 无法判断时,审阅界面会发出警告。
- 受保护的推送。压缩或删除已发布的提交时,Kiln 会提供自动推送,使用带明确预期值的
--force-with-lease。如果远程在此期间有变化,推送会拒绝覆盖。 - 服务器规则照常生效。服务器上的分支保护规则仍然有效,Kiln 不会绕过。
冲突
遇到冲突时操作会停下,并提供继续、跳过或中止选项。操作停止期间不会推送任何内容。
推送失败
如果本地改写已完成,但随后推送失败,Kiln 会分别显示两个结果:本地改写已完成,远程更新未完成。备份信息仍可在结果详情中找到。
拉取请求
在检查器中打开 GitHub,不离开工作区就能审阅所选仓库的拉取请求。与 Git 历史一样,多仓库工作区中请使用仓库选择器。