跳到主要内容
版本:0.6.x

RefLog

RefLog 面板显示仓库中所有引用更新的历史记录 — 检出、提交、变基、合并等。它提供了一种快速恢复丢失的提交或分支状态,并对任何历史条目执行操作的方法。

访问 RefLog 面板

  1. 3 将焦点切换到提交日志 / RefLog 面板。
  2. > 从提交日志切换到 RefLog
  3. < 返回提交日志。

键位绑定

按键动作
< / >在提交日志和 RefLog 之间切换
↑ / k移动到上一条目
↓ / j移动到下一条目
enter查看条目详情
n从提交哈希创建新分支
r重置到选定的提交
ctrl+pcherry-pick 到当前分支并应用

每条条目显示的内容

每条 reflog 条目显示以下信息:

  • 提交哈希 — 引用的提交的简短哈希
  • 操作描述 — 发生内容的概述(例如:checkout: moving from main to feature
  • 操作类型 — 操作的类别(例如:checkoutrebasecommitmerge

工作流

从 RefLog 条目创建新分支

适用于恢复已删除的分支或从任意历史状态创建分支。

  1. 使用 / 选择目标 reflog 条目。
  2. n
  3. 出现创建新分支输入弹窗,预填该条目的提交哈希。
  4. 输入新分支名称。
  5. enter 创建分支。

重置到 RefLog 条目

将当前 HEAD hard、mixed 或 soft 重置到该条目引用的提交。

  1. 使用 / 选择目标 reflog 条目。
  2. r
  3. 出现重置类型弹窗,请从以下选项中选择:
    • Soft — 将更改保留在暂存区。
    • Mixed — 将更改保留为未暂存状态。
    • Hard — 丢弃所有更改。
  4. 确认以执行重置。
注意

Hard 重置会永久丢弃未提交的更改,请谨慎使用。


从 RefLog 条目 Cherry-pick

将特定 reflog 条目的提交更改应用到当前检出的分支。

  1. 使用 / 选择目标 reflog 条目。
  2. ctrl+p
  3. 出现确认弹窗,显示该条目的详情:
    • 哈希
    • HEAD 引用
    • 操作类型
    • 操作信息
  4. 确认以应用 cherry-pick。

配置

您可以控制 Gitti 加载的 reflog 条目数量:

gitti --max-ref-log-count 2500

默认值为 2500 条。