仓库与历史

时光机

读一个旧提交通常意味着把它检出来,也就意味着要先把手上的活儿贮藏掉。这个不用。

拖动滑块,文件树会随每个提交重新渲染:文件夹冒出来,文件在它们之间挪位置,被删掉的文件又回来了。挑一个文件,你读到的就是它在那个提交时的样子。

所有内容都是从对象数据库读出来的(git ls-tree、git show)。不检出,HEAD 从不移动,你未提交的活儿分毫未动——你可以在改到一半的时候,把一整年的历史来回拖着看。

某个更早提交时的文件树,旁边打开着一个文件

拖动滑块:文件树一个提交一个提交地自我重建

操作

按键 动作
← → 一个提交
⇧ + ← → 十个提交
Home / End 最旧 / 最新

滑块两侧的箭头做的是同一件事。当前提交动过的文件会在树里高亮,标题栏上带一个计数。

选中项能穿越时间

挑一个文件,然后往回拖,越过创建它的那个提交:面板会说它在这里还不存在,并且保住你的选中项。往前拖,文件带着它的旧内容回来了。这正是重点所在——你移动的是仓库,不是你的光标。

打开这个版本会把该提交处的这个文件交给常规的文件视图。

另请参阅: 延时回放 · 追溯与文件历史

在 GitHub 上改进这份翻译