P43 · 工具调用

在独立检出目录中评审

Isolated Review Checkout

把评审放到独立的代码目录,避免影响正在实现的工作。

编辑审核

以下示例与示意结果由本站编写,用于说明方法,不是模型实测结果。

使用场景

主工作区有用户未提交改动,你要评审已提交候选 revision-a的小补丁。独立检出可避免为阅读切换主分支,但不会自动包含主区未提交内容;这次范围必须先明确。

具体做法

记录主工作区基线和评审目标,在允许的位置创建独立检出并核对候选身份。稀疏范围仅在不会遗漏必要调用者时采用;检查和产物留在评审区,结束对比主状态。若要审未提交内容,按明确范围另外提供受控快照,不能把 HEAD检出误称当前工作树。隔离不可用时保持主区只读,不回滚用户改动。

反例

把主区切到 PR分支,清掉阻挡的未提交文件;或只检出 revision-a却称最新未提交补丁也已评审。

改进写法

教学只评 revision-a:先保存主区状态,在允许位置建立独立检出,核对提交和完整所需依赖后检查。评审前后确认主区未变。若目标改为未提交补丁,应按范围快照并注明来源,不能偷换成 HEAD。创建失败就报告并选择安全只读检查;清理仅处理已确认评审目录,不覆盖其他工作。

为什么这样改

隔离把评审操作从实现现场分开,目标身份又防止隔离环境只拥有提交数据却被当作全部当前变化。主区对比说明实际保留,而不是因用了 worktree就推断无影响。

如何验证

教学前后主区文件/状态一致,评审记录是 revision-a;稀疏未含调用方时保留覆盖缺口或在范围内补取。

清理失败不会触发强删主区,未提交目标缺失不能说通过。本篇不创建或删除实际 worktree。

适用边界

独立目录不是所有资源隔离,凭据、缓存和服务可能共享。源码范围与测试能力需核对;冻结的创建/回退命令不是当前权限,文件清理要验证绝对路径与归属。

原文与版本

如何收录这些方法

相关方法